【M1 Mac】VScode+Docker로 Python 환경을 구축하는 방법(데이터 해석·기계 학습용 컨테이너)

전회, M1 mac에서의 python을 환경 구축하는 주된 방법에 대해서 XNUMX종류 정리했습니다.

Django · Flask를 사용한 앱 개발과 기계 학습 · 데이터 과학 용 프로그램을 실행할 수 있도록하기 위해,Docker와 Visual Studio Code (VScode)를 사용하여 Python 환경을 구축하는 단계 (+ Jupyter notebook에 연결할 때까지)를 작성하십시오.

Docker+VScode인 이유

Docker를 사용하면 컨테이너에 의해 쉽게 관리하면서 비교적 경량으로 가상 환경을 구축하고 실행할 수 있습니다.또한 프로젝트별로 컨테이너를 나누어 사용하면 Anaconda에서 가끔 발생하는 종속성 충돌로 인한 환경 파괴 위험을 방지할 수 있습니다.

Visual Studio Code에서,Docker 컨테이너의 Python 인터프리터에 액세스하는 기능을 기본적으로 사용할 수 있습니다.. Python에서 가장 인기있는 IDE (통합 개발 환경) Pycharm이라면 유료 버전 (연 1 만엔 정도)이어야합니다. VScode는 두 번째 점유율을 자랑하며 Pycharm과 마찬가지로 사용하기 쉬운 IDE입니다.

2만 4000초의 개발자에게 들은 Python에서 사용하는 개발 환경 1위는?

Docker 및 VScode를 사용한 Python 환경 구축 절차

  1. Docker 설치
  2. Visual Studio Code 및 확장 프로그램 설치
  3. Vscode와 Docker 컨테이너를 연결해보십시오.

1. Docker 설치

Docker 공식 문서에 따라 앱을 설치합니다 (아래 내용은 함께).

먼저 docker를 넣기 전에 Rosetta2를 준비합니다.터미널에서 다음 명령을 실행합니다.

 softwareupdate --install-rosetta

잘하면 "softwareupdate -install-rosetta"라고 표시되므로 계속Apple silicon용 Docker앱을 설치합니다.

docker for apple silicon

Docker를 열면 password가 필요하므로 입력합니다.

2. Visual Studio 코드및 확장 프로그램 설치

마이크로소프트 페이지에서 VScode를 얻고 마찬가지로 설치합니다.

VScode를 열면 마음대로 언어를 인식하고, 일본어화 플러그인을 도입해용으로 주기 때문에, 허가합니다.그런 다음 확장 프로그램 "remote-containers"를 넣습니다.

3. Vscode와 Docker 컨테이너를 연결해보십시오.

터미널에서 다음 명령을 실행하고,도커 허브에서miniconda를 기반으로 한 jupyter lab (notebook) 용 컨테이너걸립니다.

docker pull jupyter/scipy-notebook

여기에서 만드는 컨테이너는 무엇이든 좋습니다. Docker Hub를 찾으면 Anaconda 컨테이너와 Pytorch 컨테이너 등 여러 가지를 찾을 수 있습니다.

Docker 앱의 'Image'를 열면 새로운 이미지가 만들어져 있으므로 'Run'→ option을 입력하여 컨테이너를 실행한다.

  • Container Name: 좋아하는 컨테이너 이름
  • 로컬 호스트 : 8888 (컨테이너와 연결하기 위해 포트, 무엇이든 좋은)
  • Volume : 우선 user / application 아래 폴더를 지정했습니다 (로컬과 볼륨을 공유하고 싶은 경우 설정)
Docker 컨테이너 옵션

VAcode의 명령 팔레트(Command+shift+P)에 "원격수행-용기연결 에 Running Container'를 입력하면 VScode가 컨테이너와 연결되어 새 VScode 창이 시작됩니다. 파이썬 패키지를 추가하고 싶다면이 터미널에서 조작하십시오.

Jupyter notebook 열기

컨테이너가 실행되는 동안 브라우저에 "http://localhost:8888/'를 입력하면 다음 페이지가 표시됩니다.

Juupyter notebook에 로그인 화면

로그인 패스워드(token)는, 컨테이너를 클릭하면 볼 수 있는 「log」에 있으므로, 찾아 로그인한다(「http://~~~~/?token=OOOOO」의 OOOOO 부분)

Docker 컨테이너의 Log 화면

그리고는 익숙한 화면이므로 설명 불필요하다고 생각합니다.

Jupyter notebook 로그인 후

이상, VisualStudioCode+Docker로 Python 환경을 구축하는 방법이었습니다.