0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

既存のdockerコンテナから新たなイメージを作成する

Posted at

〜Dockerfile編〜

↓ターミナル操作

Docker hubからimageを取得

・使いたいimageをpullする。

<例>docker pull nvcr.io/nvidia/tensorflow:20.12-tf1-py3

docker imagesで中身確認。
新たなimageが出現してる。
Screenshot from 2021-10-06 15-08-46.png

適当な場所にフォルダを作成(ここでは/home/で作成したことを想定)

mkdir testDockerfile

<例>
/home/tmc/testDockerfileが出来上がる
Screenshot from 2021-10-06 15-12-15.png

作成したフォルダ内に移動する

cd testDockerfile

テキストファイルを作成する。

touch Dockerfile

↓ホスト側操作(マウス操作)
作成したtestDockerfileフォルダ内にDockerfileが作成されているか確認する。
Screenshot from 2021-10-11 14-22-28.png

作成されてたらテキストファイルの中に実行したいコマンドを入力して保存する。

<例>
Screenshot from 2021-10-06 15-22-43.png

↓ターミナル操作

・新たなimageを生成する。

docker build -t 'dockertest'(新しいリポジトリ名を任意に設定) /home/tmc/testDockerfile(dockerfileのありか)

もしくは

docker build -t 'dockertest'(新しいリポジトリ名を任意に設定) .

※最後の'.'を忘れないように!!

docker imageが生成されたか確認する

docker images

Screenshot from 2021-10-06 15-42-53.png

docker tag dockertest:latest(上げたいイメージのレポジトリ名) sasagurinaoto/docker(上げたい先dockerhub)

同じimgeIDで新たなdocker imageが生成されたか確認する。

docker images

同じimageIDでもう1個イメージが生成されてる。
Screenshot from 2021-10-06 15-47-18.png

・docker hubにpushする。

docker push sasagurinaoto/docker

Screenshot from 2021-10-06 15-58-52.png

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

〜コンテナから直接イメージ作成編〜

①ベースとなるdockerイメージをpullする

docker pull ユーザー名/イメージ名

pullできてるか確認

docker images

②pullしてきたdockerイメージを使ってコンテナを作成

docker run レポジトリ名(ユーザー名/イメージ名)

③コンテナ内で必要モジュールをインストールする

<例>

pip install opencv-python
pip install efficientnet

④コンテナを停止する

exit

Screenshot from 2021-11-03 09-51-14.png

停止したか確認する

docker ps -a

Screenshot from 2021-11-03 09-51-21.png

⑤新たなイメージを作成する

docker commit 元イメージ名 新たなイメージ名:tag名

Screenshot from 2021-11-03 09-52-10.png
作成されたか確認

docker images

Screenshot from 2021-11-03 09-52-23.png

⑥dockerhubに上げたいイメージと上げる先を指定

<例>

docker tag イメージ名:tag名(上げたいイメージのレポジトリ名) <例>sasagurinaoto/docker(上げたい先dockerhub)

同じimgeIDで新たなdocker imageが生成されたか確認する。

docker images

同じimageIDでもう1個イメージが生成されてる。
Screenshot from 2021-10-06 15-47-18.png

⑦docker hubにpushする。

docker push sasagurinaoto/docker

Screenshot from 2021-10-06 15-58-52.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?