Linux 서버에서 Python 3.10.12 설치하기 (관리자 권한 없이)

PyERIN·2025년 2월 11일
0

기록

목록 보기
3/4

리눅스 서버에서 관리자 권한 없이 Python 3.10.12를 설치하는 방법을 정리함.

🤔 문제 상황

프로젝트에서 사용하는 모델들의 의존성 때문에 Python 3.10.12 버전이 필요했는데,
리눅스 서버의 관리자 권한이 없어서 sudo apt install을 사용할 수 없는 상황이었다.

처음엔 로컬(Windows)에서 작업했었는데, Linux 서버에서 돌아가게 하려고 많은 시행착오를 겪었다.
나는 이미 삽질을 하며 시간을 많이 박았지만, 프로젝트 팀원들의 시간을 절약해주기 위해 README 문서를 상세히 작성한 김에, 이렇게 블로그로도 써본다.

특히 Poetry를 이용해서 Python 3.10.12를 적용하는 과정이 오래걸렸다. 한 2시간 정도?


⚠️ 기존에 겪은 문제들

  • sudo 없이 Python을 설치하는 방법이 명확하지 않음.
  • 연구실 서버에 기본 설치된 Python 버전이 높아 Poetry에서 원하는 버전을 사용하려면 downgrade 해주어야 함.

🛠️ 해결 방법

1️⃣ pyenv 설치 (관리자 권한 없이 가능!)

기본적으로 pyenv를 사용하면 sudo 없이도 Python을 설치할 수 있음.

curl https://pyenv.run | bash

설치가 끝나면, 환경 변수 설정을 추가해야 함.

echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init --path)"' >> ~/.bashrc
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
source ~/.bashrc

이제 터미널을 다시 열고 pyenv --version을 실행해서 정상적으로 설치되었는지 확인하면 됨.


2️⃣ Python 3.10.12 설치 & 적용

PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.10.12
pyenv global 3.10.12

이제 python --version을 실행하면 Python 3.10.12가 출력되어야 함.

만약 pyenv: command not found 같은 오류가 뜨면, 환경 변수가 적용되지 않은 거니까 터미널을 껐다가 다시 열어보면 해결됨.


3️⃣ Poetry에서 Python 3.10.12 적용하기

이제 Poetry를 이용해서 프로젝트 환경을 세팅해야 함.
먼저, 기존 가상 환경을 삭제하고 다시 생성해야 한다.

poetry env remove python
poetry env use $(which python3.10)
poetry install

설정된 가상 환경을 확인하려면:

poetry env info

이제 Python: 3.10.12가 나오면 성공적으로 적용된 것!

잘 된 것을 확인할 수 있다 :)


✅프로젝트 실행 성공

프로젝트를 실행하려면:

poetry run streamlit run {file_path} 

잘 돌아가는 것을 확인하였다. (。•̀ᴗ-)✧


🔥 최종 정리

  • 관리자 권한 없이 Python 3.10.12 설치pyenv를 사용하면 해결됨.
  • 환경 변수 설정 필수PATH에 pyenv 경로 추가.
  • Poetry에서 Python 버전 강제 적용poetry env use $(which python3.10)

원래 환경설정 무지 싫어했었는데 이번 이슈 해결들은 재밌었다.
아무래도 기록을 병행해서 그런 것 같다. 다른 사람들을 돕는다는 약간의 뿌듯함과 성취감?
이 글이 나처럼 삽질하는 사람들에게 도움이 되었으면 좋겠다. 😎


📌 추가 참고

이 과정에서 Poetry 설치 후 무한 Pending 이슈도 겪었는데, 해결 방법을 따로 정리했음.
자세한 내용은 아래 링크에서 확인할 수 있음. 👇

🔗 서버 Poetry 설치 무한 Pending 이슈 해결방법

이제 환경 세팅할 때 시간 덜 뺏기길! 🔥

profile
일단 매일 구르자

0개의 댓글