🐳

Docker HubにPushする方法

2021/06/30に公開

はじめに

似たようなコンテナを毎回作成するという非効率なことを行っていたので、Docker HubにPushしてみようと思い立ちました。

手順

手探りでやってみたところ、以下の手順でできました。

  1. Docker Hubでリポジトリを作成
  2. コンテナを作成
  3. 作成したコンテナをコミット
  4. docker tag
  5. docker login
  6. docker push

1. Docker Hubでリポジトリを作成

Docker Hubで、Create Repositoryを押して、リポジトリを作成します。

2. コンテナを作成

Dockerfileを用意して好きなコンテナを作成します。
ここでは、docker-compose.ymlを使用してコンテナをビルドしました。
ビルドに使用したファイルはGitHubで管理しています。

3. 作成したコンテナをコミット

docker psで起動中のコンテナのCONTAINER IDが分かるので、そのCONTAINER IDを使用して、以下の文でコミットします。
:<tag>は入れても入れなくても良いです。デフォルトだと、:latestとなっています。


docker container commit <container-id> <hub-user>/<repo-name>[:<tag>]

4. docker tag

下記コマンドを入力して、Imageにリポジトリ名をタグ付けします。


docker tag <image-id> <repo-name>

5. docker login

下記コマンドを入力後、ユーザー名とパスワードを入力してログインします。


docker login

ログインに成功したら、Login Succeededと表示されます。

6. docker push

下記コマンドを入力して、Docker Hubにpushします。


docker push <hub-user>/<repo-name>[:<tag>]

参考

https://docs.docker.com/docker-hub/repos/#pushing-a-docker-container-image-to-docker-hub

Discussion