はじめに
ローカル環境のイメージを初めてDockerHubへpushする手順を記します。
前提
- DockerHubのアカウントを作成していること
- ローカル環境にイメージがあること
- 本手順に記載のコマンドは、ターミナルから実行されること
環境情報
$ sw_vers
ProductName: macOS
ProductVersion: 13.1
BuildVersion: 22C65
$ docker -v
Docker version 20.10.23, build 7155243
手順
以下の手順を実行します。
(1) リモートリポジトリを作成する
(2) ローカル環境からDockerHubにログインする
docker login -u アカウント名 -p パスワード
(3) ローカル環境のイメージとpushするイメージを紐づける
docker tag ローカルイメージ名:タグ名 アカウント名/リモートリポジトリ名:タグ名
(4) ローカル環境からDockerHubにイメージをpushする
docker push アカウント名/リモートリポジトリ名:タグ名
解説/実施
(1) リモートリポジトリを作成する
1. DockerHubのホームページに移動します。
2. 「Create a Repository」をクリックする。
3. リポジトリ名と公開範囲(Public/Private)を選択し、「Create」をクリックする。
4. リモートリポジトリの作成完了です。
※以降の手順は、全てローカル環境で実施します。
(2) ローカル環境からDockerHubにログインする
1. 以下のコマンドでDockerHubにログインします。
docker login -u アカウント名 -p パスワード
アカウント名とパスワードには、DockerHubに登録した情報をそれぞれ入力します。
以下の文言が表示されればOKです。
Login Succeeded
(3) ローカル環境のイメージとpushするイメージを紐づける
1. 以下のコマンドでローカル環境のイメージとpushするイメージを紐づけます。
docker tag ローカルイメージ名:タグ名 アカウント名/リモートリポジトリ名:タグ名
-
ローカルイメージ名
- リモートリポジトリにpushしたいイメージを指定します。
-
:タグ名
- イメージのタグを指定します。
- リモートリポジトリにpushするタグ名は、自由に指定できます。
- ローカル、リモートともに、指定しなかった場合は、「latest」が設定されます。
以下のイメージを持ってコマンドを入力しましょう。
docker tag ローカル環境の情報 リモートリポジトリの情報
(4) ローカル環境からDockerHubにイメージをpushする
1. 以下のコマンドでイメージをローカル環境からリモートリポジトリにpushします。
docker push アカウント名/リモートリポジトリ名:タグ名
「docker push」の後には、「docker tag」で指定したリモートリポジトリの情報を入力します。
最後に
GitHunを使用していれば、流れを掴みやすいと感じました。
最初はとっつきにくかったけれど、手を動かしてみたら意外と覚えやすかったです。
参考
- https://docs.docker.jp/engine/reference/commandline/login.html
- https://docs.docker.jp/engine/reference/commandline/tag.html
- https://docs.docker.jp/engine/reference/commandline/push.html