■ はじめに
https://dk521123.hatenablog.com/entry/2023/12/02/024631
でECRへの登録した。 今回は、レポジトリへのイメージ登録するためのコマンドを纏める。 なお、Docker Hub でも使える。詳細は、以下の関連記事を参照のこと
Docker ~ Docker Hub への登録 ~
https://dk521123.hatenablog.com/entry/2024/01/21/125706
目次
【1】docker login 【2】docker image build 【3】docker image tag 【4】docker image push 【5】docker image pull 【6】docker image save 【7】docker image load 【8】docker container commit
【0】遷移図
+------------+ | Docker Hub | +------------+ | ↑ pull | | push ↓ | +------------+ build +--------------+ rmi | Dockerfile | ------> | Docker Image | ------> Deleted +------------+ +--------------+ ↙ ↗ create | ↑ commit run ↙ ↗ commit ↓ | +-----------+ stop +-----------+ rm | Container | ------> | Container | ------> Deleted | (Running) | <------ | (Stopped) | +-----------+ run +-----------+
【1】docker login
* ログイン
構文
docker login [オプション] [サーバ]
コマンド例
# --username:ユーザ名、--password:パスワード docker login --username admin --password password xxxx.xxx.ecr.us-west-2.amazonaws.com
セキュアに行うには...
# --password-stdin(標準出力からパスワードを設定) を使用する cat ~/.password.txt | docker login --username admin --password-stdin xxxx.xxx.ecr.us-west-2.amazonaws.com
【2】docker image build
* Dockerfile からイメージをビルド
https://docs.docker.jp/engine/reference/commandline/image_build.html
構文
# -t: タグを 名前:タグ の形式で指定 docker image build -t イメージ名[:タグ名] [Dockerfileが配置されているディレクトリパス]
コマンド例
docker image build -t hello-world-ecr
https://www.wakuwakubank.com/posts/270-docker-build-image/
【3】docker image tag
* タグづけする
構文
docker image tag [イメージID] [リポジトリ名]:[タグ]
コマンド例
docker image tag hello-world-ecr:latest xxxx.xxx.ecr.us-west-2.amazonaws.com/hello-world-ecr:latest
【4】docker image push
* コンテナイメージをリポジトリにプッシュする
構文
docker image push [コンテナ名]
コマンド例
docker image push xxxx.xxx.ecr.us-west-2.amazonaws.com/hello-world-ecr:latest
【5】docker image pull
* コンテナイメージをリポジトリからプルする * 旧コマンド「docker pull」
構文
docker image pull registry/repository[:tag]
コマンド例
# docker image pull registry/repository[:tag]
docker image pull xxxx.xxx.ecr.us-west-2.amazonaws.com/hello-world-ecr:latest
【6】docker image save
* Dockerイメージのexport * 旧コマンド「docker save」
構文
# Dockerイメージをtarファイルとして出力する docker image save [コンテナ名] -o [Tarファイル名].tar
コマンド例
docker image save hello-world-ecr:latest -o hello-world-ecr.tar
【7】docker image load
* Dockerイメージのimport * 旧コマンド「docker load」
構文
# tarファイルをDockerイメージとしてロードする docker image load -i [Tarファイル名].tar
コマンド例
docker image load -i hello-world-ecr.tar # 確認 docker image ls
参考文献
https://qiita.com/leomaro7/items/e5474e67a8e41536f0ff
【8】docker container commit
* イメージ作成 * 旧コマンド「docker commit」
構文
コマンド例
docker container commit fb31cf61cb2c admin/helloworld docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE admin/helloworld latest 2f25f5844caa About a minute ago 199 MB docker container run -i -t admin/helloworld
参考文献
https://qiita.com/zembutsu/items/6e1ad18f0d548ce6c266
関連記事
Docker ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2020/04/24/160044
Docker ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/02/25/000000
Docker ~ 基本編 / dockerコマンド ~
https://dk521123.hatenablog.com/entry/2020/04/13/000000
Docker ~ 基本編 / docker container コマンド ~
https://dk521123.hatenablog.com/entry/2022/01/20/000000
脆弱性エラー対応時に役立ったDockerコマンド
https://dk521123.hatenablog.com/entry/2024/02/03/020736
Docker ~ ファイルをコンテナにコピー ~
https://dk521123.hatenablog.com/entry/2022/04/27/000000
Docker ~ Docker Hub への登録 ~
https://dk521123.hatenablog.com/entry/2024/01/21/125706
Amazon ECR ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2020/05/22/165711
Amazon ECR ~ Dockerイメージを Pull & Push ~
https://dk521123.hatenablog.com/entry/2023/12/02/024631
Terraform ~ AWS ECR ~
https://dk521123.hatenablog.com/entry/2023/05/23/002314