前回はdocker commit コマンドを使い、ローカルリポジトリのコンテナから新しいDocker imageを生成しました。
今回は、新しく作成したDokcker imageをDockerHubにpush(アップロード)するところまでやっていこう!
👇Dockerホームページに移動&ログインCreate Repository をクリック
③Nameに自分の好きな名前を設定(但し、リポジトリの名前はimageと同じにする必要有り)
今回は、my-first-repo に設定(つまり、<username>/my-first-repo)
④Visibilityはpublic、GitHubにリンクさせたい場合はBuild-settingsで設定。
⑤Create(Create&Bild)をクリック
⑥リポジトリ一覧で自身で作ったリポジトリがあることを確認
⑦imageをリポジトリにpushするために、imageの名前を今作ったリポジトリに変更
$ docker tag <今のimage name> <新しいimage name>
: <今のimage name> を<新しいimage name>に変更
※参考:ubuntu:latestのリポジトリの正式名称 registry-1.docker.io/library/ubuntu:latest
DockerHubのレジストリは <homename>:<port>/<username>/<repository>:<tag>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
[~] $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu new 5d03665b97bb 8 seconds ago 72.8MB ubuntu latest 26b77e58432b 3 weeks ago 72.9MB # imageの名前を変更 [~] $ docker tag ubuntu:new <username>/my-first-repo (<username>は人によって違う) # imageの名前が変更出来たか確認 [~] $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE skmkuma/my-first-repo latest 0e82cc9b4865 5 hours ago 72.9MB ubuntu latest 26b77e58432b 3 weeks ago 72.9MB |
⑧名前を変更したimage(skmkuma/my-first-repo)をDockerHubにpushする
$ docker push <image>
まず先ほど名前を変更して保存したimage(skmkuma/myfirst-repo)をDockerHubにpushする。
するとubuntuの部分はmountされ、新しく作ったコンテナはプッシュされたのがわかる。
DockerHubのリポジトリに送ったimageを再びpullしてみよう
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
[~] $ docker push skmkuma/myfirst-repo Using default tag: latest The push refers to repository [docker.io/skmkuma/my-first-repo] 3c5af2084129: Pushed 346be19f13b0: Mounted from library/ubuntu 935f303ebf75: Mounted from library/ubuntu 0e64bafdc7ee: Mounted from library/ubuntu latest: digest: sha256:0fd9037ca5d7cc1365e6d43d48034f5d3e3bad2ec7a58c85f23069eb9424f29d size: 1150 # プッシュした元のimageは削除しておく [~] $ docker rmi skmkuma/myfirst-repo Untagged: skmkuma/my-first-repo:latest # pushしたDocker imageをpull(DockerHub→ローカルリポジトリ)できるか確認 [~] $ docker pull skmkuma/my-first-repo Using default tag: latest latest: Pulling from skmkuma/my-first-repo a70d879fa598: Pull complete c4394a92d1f8: Pull complete 10e6159c56c0: Pull complete 680ea169a563: Pull complete Digest: sha256:0fd9037ca5d7cc1365e6d43d48034f5d3e3bad2ec7a58c85f23069eb9424f29d Status: Downloaded newer image for skmkuma/my-first-repo:latest docker.io/skmkuma/my-first-repo:latest # pullしたものがローカルリポジトリに入ったか確認 [~] $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE skmkuma/my-first-repo latest 0e82cc9b4865 5 hours ago 72.9MB # 問題なく起動できるか確認 [~] $ docker run -it skmkuma/my-first-repo bash root@9e5681a63726:/# |
いかがだったでしょうか?
次回は、dockerコマンドのオプションについて使用頻度の高いものを抜粋して紹介しようと思います。
今回はこの辺で、バイバイ👋
○プログラミング初心者
○Dockerの基礎の基礎部分を勉強したい人