docker로 code-server 구축 후 문제가 조금 생겼습니다.
code-server를 그냥 self-hosted로 설치하다가 매번 업데이트 알림이 뜨는게 귀찮아서 docker로 구축했는데 문제가 조금 발생했네요.
평소에는 크게 문제될게 없는데, watchtower로 자동 업데이트 된 이후에 문제가 발생합니다.
어느날 코드서버에서 파이썬으로 코드를 작성후 run 해보니 인터프리터가 없다는 에러가 발생합니다.
여차저차 찾아보니 watchtower가 작동하면서 code-server를 업데이트한 것 까지는 좋았는데,
code-server 컨테이너가 재생성됨으로써 인터프리터 용도로 설치되었던 python3과 pip 등이 모두 제거된 기본 이미지상태로 업데이트가 진행되었네요.
매번 컨테이너 내부로 접속해서 apt-get update && apt-get install python3을 할 수는 없는 노릇이니 뭔가 근본적인 해결책이 필요한 것 같습니다.
업데이트는 업데이트대로 진행되면서 컨테이너 재생성시에도 python3 패키지도 온전히 보전할 수 있는 방법이 있을까요?
좋은답변을 받기위해서는 좋은 질문이 필요합니다.
유의할점⚠️
- 예의를 지켜주세요. 답변자는 답변을 할 의무는 없습니다.
- 질문에 대한 대부분의 답은 검색으로 찾아보실 수 있습니다.
- 답변자가 답변을 하면서 대개 많은 경우는 다시 질문을 하는 경우가 많이 있습니다.
- (질문의 대한 정보가 부족합니다. ~일 경우 결과물이 어떻게 됩니까? 등등)
질문방법🙏
자신의 상황을 최대한 자세히 설명해주세요.
상황이 정확하고 많을 수록 답변의 정확도가 올라갑니다.
ex) ex) 헤놀로지라면 메인보드 모델 칩셋정보, CPU, 사용한 DSM 버전, 모델, 부수적인 추가 컨트롤러 나 랜카드 등과 어떠한 로더의 이미지를 사용했는지.(arpl-i18n, mshell), 어떤 버전을 사용했는지, 문제가있다면 어떠한것인지 스크린샷을 동반하고 에러의 경우 에러로그를 출력해서 주시면 좋습니다.
*가능하면 최신버전 OS/SW를 이용해주세요
답변에대한 피드백을 주세요.
정보가 질문에 모두 담겨있지않다면 대부분의 답변이 다른정보를 요구합니다.
이러한 답변에 대해 명확한 피드백을 주시면 도움이 됩니다.
Docker 컨테이너 안에서 python을 설치하셨나요..?
이미지 구우시죠
code server 기반 도커 이미지를 매번 생성해야해요
도커 컴포즈에 도커파일을 추가하거나 아니면 커맨드, 엔트리포인트로 할수도 있습니다
늘 파이썬이 저를 싫어해서 잘 설정할수 있을지 모르겠지만 이미지 만드는 김에 같이 만들어드릴게요 :)
Code-Server를 가장 유용하게 운영하려면, Remote 저장소를 통한 운영을 하시는게 좋습니다.
즉 코드 서버는 로컬에 설치한것 처럼 서버에 설치해서 해당 서버를 브라우저를 통해 실행하고, (코드와 분리)
코드는 별도의 서버를 통해 실행 또는 관리 하는 것 입니다.
개발코드와 실행환경등은 별도의 서버에 설치하고, 코드서버는 순수 vscode만 실행되도록 구성하는 것 이죠.
말씀하신것 처럼 Code-Server 내에서 모든것을 구현 하려면, 위에서 말씀하신 분들처럼 매번 이미지에 파이썬을 설치하시거나, 이미지가 업데이트 될때마다 본인의 이미지를 만들어서 업데이트 하시는 방법을 하셔야 합니다.
아래는 원격 개발에 대한 설정법이 나와 있는 블로그 입니다. 참조 하시면 좋을듯 하네요
https://velog.io/@leesjpr/VS-Code-Remote-interpreter-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0
docker-compose.yml 내 Environments 에 하기 구문을 추가합니다.
DOCKER_MODS: linuxserver/mods:code-server-python3
official mods이며, docker-compose up -d로 컨테이너 생성시 python3, python3-pip, python3-venv도 같이 설치됩니다.
이미지가 업데이트 될 때마다 다운로드 받는게 좀 많은게 탈이긴 하나, 귀찮음은 해결 할 수 있어서 당분간 이 방법으로 쓰려고 합니다.
도움을 주셔서 감사합니다.
cmt alert