やりたいこと
- dockerhubに、自作のdockerイメージを登録したい。
- 登録してみることが今回の目的なので、非常にシンプルなイメージにしている。
環境
- ローカルのDockerバージョン
19.03.12
- macOS Catalina バージョン10.15.5
手順
準備
- dockerhubのアカウントを作成する。
- 以下のようなディレクトリを作成する
dockerhub_manually_push/
├ Dockerfile
└ hello.txt
- Dockerfileには以下のように記述。
FROM ubuntu
COPY hello.txt /tmp/hello.txt
CMD ["cat", "/tmp/hello.txt"]
- hello.txtには以下のように記述。
manually push success!
イメージのビルド
- 以下を
dockerhub_manually_push
にて実行。 -
hogeuser
は、dockerhubのユーザ名に変更してください。
docker build -t hogeuser/dockerhub_manually_push .
- 実行結果はこんなかんじ
Sending build context to Docker daemon 3.072kB
Step 1/3 : FROM ubuntu
---> 4e2eef94cd6b
Step 2/3 : COPY hello.txt /tmp/hello.txt
---> f8dffefe0e98
Step 3/3 : CMD ["cat", "/tmp/hello.txt"]
---> Running in cc00ea9b80e1
Removing intermediate container cc00ea9b80e1
---> 8f10f2bddeae
Successfully built 8f10f2bddeae
Successfully tagged hogeuser/dockerhub_manually_push:latest
-
docker images
またはdocker image ls
コマンドで、イメージが作成されたか確認
❯ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hogeuser/dockerhub_manually_push latest 8f10f2bddeae 4 seconds ago 73.9MB
dockerhubにログイン
❯ docker login
Authenticating with existing credentials...
Login Succeeded
dockerhubにイメージを登録
docker push hogeuser/dockerhub_manually_push:latest
dockerhubを確認
登録したイメージをpullして実行
- 「Play with Docker」という、ブラウザ上のDocker実行環境を使用してみる。
- ここには、linuxOSとDocker(version20.10.0)のみが準備されている。
- 「Start」→「ADD NEW INSTANCE」でコンソールが起動する。
- 以下コマンドで、先程dockerhubに登録したイメージを持ってくる。
docker pull hogeuser/dockerhub_manually_push
以下実行結果。
$ docker pull hogeuser/dockerhub_manually_push
Using default tag: latest
latest: Pulling from hogeuser/dockerhub_manually_push
54ee1f796a1e: Pull complete
f7bfea53ad12: Pull complete
46d371e02073: Pull complete
b66c17bbf772: Pull complete
9d7f6024b75c: Pull complete
Digest: sha256:da97805c1f3f1578ce661c71df17e8bdaabc905662afa71d3202d5d56287f431
Status: Downloaded newer image for hogeuser/dockerhub_manually_push:latest
docker.io/hogeuser/dockerhub_manually_push:latest
イメージがローカルに保存できた。
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hogeuser/dockerhub_manually_push latest 8f10f2bddeae 10 minutes ago 73.9MB
- イメージからコンテナを起動し、実行する
$ docker run hogeuser/dockerhub_manually_push
manually push success!
テキストの内容が表示されたので、問題なく実行できたようです。