Pycharm만 사용하다가 Docker container 내에서 직접 코딩, 디버깅할 일이 생기니 귀찮은 점이 꽤 많아서 VScode를 쓰기로 했다.
Pycharm은 회사에서 쓸 경우, 라이센스 문제도 있고 3.10 이상 버전의 interpreter는 고작 이름 때문에 인식 못해서 사용하지 못하는 문제 등 잡다한 이슈들이 많아 짜증날 때가 있었는데 이 참에 VScode로 확 갈아타는 것이 나을 것 같다.
1. VScode 내 extension 설치
VScode를 현재 띄워져있는 컨테이너에 붙이고자 하면 위 extension을 설치해두어야 한다. 예전 이름은 Remote Containers였던 것 같은데 지금은 Dev Containers로 바뀐 듯하다.
Python extension은 기본으로 깔아두어야 한다.
2. VScode를 container에 갖다 붙이기
명령 팔레트 (Ctrl + Shift + P )를 열고 대충 attach라고 검색하면 기능이 뜬다. 선택을 하면 띄워져있는 컨테이너 목록이 뜰 것이고 고르면 된다.
그러면 새로운 VScode 창이 열리고 Docker 컨테이너 내 폴더에 붙어있는 것을 볼 수 있다.
이슈
이런 오류/경고가 뜰 수도 있는데 권한 문제다.
해결방법은 다음과 같다.
sudo groupadd docker # 보통 이미 되어있음
sudo usermod -aG docker $USER
sudo chown $USER /var/run/docker.sock
chmod 777 /var/run/docker.sock과 같이 권한을 전체 공개하는 것 대신 $USER를 소유주로 바꾸는 것이 안전.
3. python interpreter 설정하기
코드를 실행하면 아마 interpreter가 없다고 오류가 날 것인데, 컨테이너 내에 있는 interpreter를 연결해주어야 한다.
아까와 같이 명령 팔레트 (Ctrl + Shift + P)를 열고, Python이라고 대충 치면 인터프리터 선택이 뜨는데 컨테이너 내 경로가 보일 것이고 컨테이너 내 python 위치를 지정하면 된다.
혹시 python 위치를 모를 경우, 컨테이너 내에서 python을 켠 뒤, sys.executable로 확인할 수 있다.
python
>>> import sys
>>> sys.executable
'/opt/conda/bin/python'
>>> exit()
끝.
'Knowhow > Docker' 카테고리의 다른 글
VScode를 활용한 container 원격 활용 방법 (VScode로 remote container 사용하기) (0) | 2024.02.14 |
---|---|
DockerFile로 효율적으로 이미지 빌드하기 (w/ tip) (0) | 2024.01.29 |
Docker 이미지/태그 명 바꾸기, private server에 push하기 (0) | 2023.07.03 |
DockerFile 내부에서 github private repository clone 하기 (0) | 2023.06.22 |
자주 사용하는 Docker command, argument 정리 (0) | 2023.01.05 |