Pythonの開発において、仮想環境の利用は非常に重要です。特にvenv
はPythonに組み込まれているため、追加のインストールが不要で、使いやすさが魅力です。しかし、venv
を使った環境構築にはいくつかの問題点があります。例えば、複数のPythonバージョンを管理する必要がある場合、PCの容量が圧迫されたり、管理が煩雑になることがあります。
そこで、Dockerを活用することでこれらの問題を解決することができます。Dockerを用いることで、PCに依存せずに同じ環境を再現でき、環境をコード化できるため再現が楽で、使い回しも可能になります。また、不要な環境はコンテナを削除するだけで良いため、管理が容易になります。
以下に、Dockerを用いたPythonの環境構築方法を示します。
# Dockerfile
FROM python:3.6
USER root
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
COPY requirements.txt /root/
RUN apt-get install -y vim less
RUN pip install --upgrade pip
RUN pip install --upgrade setuptools
RUN pip install -r /root/requirements.txt
このDockerfileでは、Pythonのバージョン3.6をベースに、必要なパッケージをインストールし、requirements.txt
に記載されたPythonのライブラリをインストールしています。
次に、docker-compose.yml
を作成します。
# docker-compose.yml
version: '3'
services:
python3:
restart: always
build: .
container_name: 'python3'
working_dir: '/root/'
tty: true
volumes:
- ./src:/root/src
このdocker-compose.yml
では、作成したDockerfileをビルドし、コンテナ名をpython3
とし、作業ディレクトリを/root/
に設定しています。また、ローカルのsrc
ディレクトリをコンテナ内の/root/src
ディレクトリにマウントしています。
以上の手順により、Python, venv, Dockerを活用した開発環境の構築が可能です。これにより、Pythonの開発がより効率的に、そしてスムーズに行えるようになります。.