Docker | Dockerコンテナを作成しよう(Python)
- 2022.11.01
- Docker
今回はDockerのコンテナ生成の流れを理解するために、pytonの環境を作ってみたいと思います。
Dockerコンテナ生成までの流れ
以下に手順を記載します。
1)Docker HubからDocker ImageをPullする
→ Pythonのページはこちら
コマンドプロンプトにてコマンドを実行します。
docker pull python
>>
Using default tag: latest
latest: Pulling from library/python
17c9e6141fdb: Pull complete
de4a4c6caea8: Pull complete
4edced8587e6: Pull complete
a7969cffbf46: Pull complete
74fbfde6af91: Pull complete
16fe51aed899: Pull complete
e9ee507bb0de: Pull complete
4d9dbb46d211: Pull complete
3b9b3c4e849c: Pull complete
Digest:
Status: Downloaded newer image for python:latest
docker.io/library/python:latest
imageが追加されたかを確認するには、Docker Desktop>Imagesをクリックするか、コマンドプロンプトから確認することができます。
コマンドプロンプトで確認する場合は、以下のコマンドです。
docker images
>>
REPOSITORY TAG IMAGE ID CREATED SIZE
wordpress latest XXXXXXXXXXXX 5 days ago 609MB
python latest XXXXXXXXXXXX 6 days ago 932MB
mysql 5.7 XXXXXXXXXXXX 10 days ago 495MB
2)Docker Imageを起動する
→ Imageを実行することでDocker コンテナが生成されます。
Docker Desktopの Images>pythonの行の「RUN」をクリックすることで、コンテナが生成されます。
下図が、PythonをRUNした後に生成されたコンテナです。
コマンドプロンプトで実行する場合は、以下のコマンドです。
・docker container run:コンテナの生成を行う。対象のImageが存在しない場合は、Docker hubからpullする。
→ –nameオプションで「コンテナ名」を指定することができます。(指定しなかったらランダム名になる)
→ -it オプションで「image」を指定します。
docker run --name miseruIT -it python
・docker container start:生成済のコンテナを起動する。
また、コマンドプロンプトから、稼働中のコンテナを確認するには、以下のコマンドです。
docker ps
>>
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a8686dd7c351 python:latest "python3" 6 minutes ago Up 6 minutes miseruIT
稼働していないものも含めて確認する場合は「docker ps -a」です。
docker ps -a
>>
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a8686dd7c351 python:latest "python3" 44 minutes ago Up 44 minutes miseruIT
f2152bfc32f2 wordpress:latest "docker-entrypoint.s…" About an hour ago Exited (0) 59 minutes ago wordpress-wordpress-1
f102ec9c9647 mysql:5.7 "docker-entrypoint.s…" About an hour ago Exited (0) 59 minutes ago wordpress-db-1
3)コンテナに接続する
生成したコンテナの環境に接続してみましょう。
以下のコマンドを実行します。(great_mayerは今回のコンテナの名前)
docker exec -it miseruIT bash
>>
root@a8686dd7c351:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
無事入ることができました。lsコマンドも実行できます。
この環境下でpythonを起動してみます。
root@a8686dd7c351:/# python
>>
Python 3.11.0 (main, Oct 26 2022, 03:01:09) [GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
問題なく起動することができました。
4)コンテナとの接続を解除する
root@a8686dd7c351:/# exit
5)コンテナを停止する
※コンテナ名が「great_mayer」の場合
docker stop miseruIT
6)コンテナを削除する
※コンテナ名が「great_mayer」の場合
docker rm miseruIT
今回は以上です。ではまた!
-
前の記事
Docker | Docker Desktop が動かない問題… 2022.11.01
-
次の記事
Docker | DockerコンテナからDocker Imageを生成しよう | Commitのやり方 2022.11.01