##はじめに
VSCodeでDockerで動いているPythonを使って開発をする際に, ちゃんとコード補完をしてくれるシンプルな開発環境を作る.
###準備
VSCodeのDockerとRomote-Containersの拡張機能をインストールしておく
###DockerでPython3の環境を構築
Pythonの環境構築自体はdockerで簡易にpython3の環境を作ってみるを参考にした.
├ Dockerfile
├ docker-compose.yml
└ workspace/ (ここをコンテナにマウントして開発する)
FROM python:3
RUN apt-get update
RUN apt-get -y install locales && \
localedef -f UTF-8 -i ja_JP ja_JP.UTF-8
ENV LANG ja_JP.UTF-8
ENV LANGUAGE ja_JP:ja
ENV LC_ALL ja_JP.UTF-8
ENV TZ JST-9
ENV TERM xterm
RUN pip install --upgrade pip
RUN pip install --upgrade setuptools
workspace
をコンテナにマウントする.
(コンテナ内で編集した内容を引き継ぐため)
version: '3'
services:
python3:
restart: always
build: .
container_name: 'python3'
working_dir: '/workspace/'
tty: true
volumes:
- ./workspace:/workspace
コンテナを起動
$ docker-compose up -d --build
確認
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ab664cabca5f python-dev_python3 "python3" 44 minutes ago Up 44 minutes python3
必要なライブラリをインストール (コード補完の確認用に適当にnumpyをインストールしておく)
pip install numpy
###起動したコンテナにVSCodeで接続する
サイドバーのDockerからコンテナを指定してAttach Visual Studio Code
を選択すると, コンテナに接続したVSCodeのウィンドウが新たに開く.
「フォルダを開く」を選択し, マウントしたディレクトリを選択する.
コンテナでPython拡張を使うために, Pythonの拡張機能をコンテナにインストールする.
適当なPythonのファイルを作成し, interpreterにDockerで動いているPythonを指定する.
今回はPython 3.9.1
これでコンテナにインストールしたライブラリを使う際にちゃんと補完してくれる.