Windows11 WSL2 Ubuntu 24.04 LTS Docker miniconda3
miniconda + tensorflow 2.20 コンテナ構築
ここまでで python:3.12-slim のイメージを利用した最新版の Docker tensorflow gpu 版コンテナを構築してきました。
最初は docker で continuumio/miniconda3 のイメージを利用した tensorflow コンテナを作成することを
目指していましたがいつの間にか python:3.12-slim のイメージを利用した tensorflow コンテナが
出来上がってしまいました。
話を戻して、continuumio/miniconda3 のイメージを利用した tensorflow gpu 版の最新を作成して行きます。
docker-compose mini 拡張では
miniconda + matplotlib + mplfinance + scikit-learn + tensorflow(keras)
が動作するコンテナを構築しました。
でもできた Docker コンテナ yamat-mini は
python 3.11、tensorflow 2.12
に対応していました。
2025/11/13日現在、tensorflow gpu 版の最新は
python 3.12、tensorflow 2.20
となっています。
これを最新版にするところは宿題になっていました。
ここからは、miniconda + tensorflow 2.20 コンテナを構築していきます。
miniconda3 python 3.12 Dockerfile 作成
miniconda3 で tensorflow(keras) の最新版 2.20 が動作する Dockerfile を作成します。
docker-compose mini 拡張 --miniconda3 python 3.11 Dockerfile まとめ
を参考に Dockerfile 作成を作成します。
元の Dockerfile は
FROM continuumio/miniconda3:latest WORKDIR /app RUN conda create -n py311 python=3.11 SHELL ["conda", "run", "-n", "py311", "/bin/bash", "-c"] RUN conda install pandas RUN conda install -c conda-forge matplotlib RUN conda install -c conda-forge mplfinance RUN conda install scikit-learn RUN conda install tensorflow=2.12.0=gpu_py311h65739b5_0 RUN echo "conda activate py311" >> ~/.bashrc
のようになっていました。
変更点は青色の部分です。
python 3.12 で動作させなければいけません。
そして Anaconda サイトには最新版 tensorflow 2.20 はありませんので、pip でインストールする必要があります。
修正すると以下のようになります。
FROM continuumio/miniconda3:latest WORKDIR /app RUN conda create -n py312 python=3.12 SHELL ["conda", "run", "-n", "py312", "/bin/bash", "-c"] RUN conda install pandas RUN conda install -c conda-forge matplotlib RUN conda install -c conda-forge mplfinance RUN conda install scikit-learn RUN pip install tensorflow[and-cuda] RUN echo "conda activate py312" >> ~/.bashrc
[and-cuda] を書き忘れないでください。
miniconda3 python 3.12 docker-compose.yml 作成
miniconda3 python 3.12 docker-compose ファイルを作成します。
miniconda3 python 3.11 docker-compose 作成 --docker-compose.yml ファイル作成
を参考に docker-compose.yml を作成します。
元の Docker-compose は
name: yamat
services:
mini:
build: .
volumes:
- ./files:/app
deploy:
resources:
# GPUデバイスの予約設定
reservations:
devices:
# NVIDIAドライバを使用するデバイスの設定
- driver: nvidia
device_ids: ["0"]
capabilities: [gpu]
となっていますが、変更点は青色の部分です。
名前を変更します。
name: yamt20
services:
minit20:
名前は適当です。
まとめると以下のようになります。
name: yamt20
services:
minit20:
build: .
volumes:
- ./files:/app
deploy:
resources:
# GPUデバイスの予約設定
reservations:
devices:
# NVIDIAドライバを使用するデバイスの設定
- driver: nvidia
device_ids: ["0"]
capabilities: [gpu]
miniconda3 python 3.12 Dockerfile, docker-compose 保存
上記二つのファイルを保存するためのフォルダを作成します。
ホスト OS のユーザ領域に d-mini-t20/ [名前は適当です]のフォルダを作成します。
この中に、Dockerfile、docker-compose.yml、files[名前は適当]フォルダを作成します。
files の中にはコンテナ内で動作させたい(必要な)ファイルを保存します。
ファイル構成は下記のようになります。
/home/yamada/d-mini-t20/
├ Dockerfile
├ docker-compose.yml
└ files/
└ test.py
自分の PC Windows で TeraPad 等を使用して
二つのファイル(上記内容)
を作成します。
Windows 側のエクスプローラーにおいては、ネットワークの下に Linux のフォルダがあります。
Linux の中に
Ubuntu-24.04(\\wsl.localhost)
のフォルダがあります。
\\wsl.localhost\Ubuntu-24.04\home\yamada\d-mini-t20/
ここに Dockerfile, docker-compose.yml を保存します。
ファイル名は必ず Dockerfile, docker-compose.yml です。
文字コ-ドは、UTF-8N
BOM なし
改行コ-ドは、LF
です。
ここまでで、miniconda3 python 3.12 Dockerfile, docker-compose の二つのファイルが完成しました。
引き続き miniconda3 python 3.12 Docker minit20 の動作確認をしていきます