Docker HubにDocker imageをアップロードする
目次
- 目次
- 記事リンク
- 1. 概要
- 2. 前準備
- 3. ローカルからDocker imageをpushする
- 4. Docker Hub上のDocker imageからコンテナを起動する
- 5. おわりに
- 6. 参考
記事リンク
Step1: Docker Desktop環境構築
Step2: Blazor用Dockerfileの作成と実行
Step3: 今回の記事!
1. 概要
前回の記事(Blazor用Dockerfileの作成と実行)では、Blazor開発環境用のDocker imageの作成と実行確認までを完了しました。
今回は、前回作成したDocker imageをDocker Hubリポジトリへアップロードしておくことで、どのPC環境からでもDocker hub経由でコンテナを起動する方法について記載します。
これにより、別PC等での新規環境構築時、1コマンドで環境構築が可能となります。
2. 前準備
2.1. Docker Hubに登録する
まだアカウントを作っていない場合は、アカウント登録をして下さい。
2.2. Docker imageの作成
前回の記事(Blazor用Dockerfileの作成と実行)でも行いましたが、念のため再掲します。
Docker fileを置いているディレクトリでbuild実行します。
docker build -t mtside01/blazor .
※このとき、-t(タグ)オプションで「docker hubアカウント名/作りたいリポジトリ名」としてタグ付けをしておきます。
※ コマンド最後の「.」により、生成するdocker imageの置かれるディレクトリを指定しています。「.」は現在作業しているディレクトリを意味します。
しばらくすると、buildが完了します。
Docker imageが生成されていることを確認します。docker images
コマンドで現在生成されているdocker image一覧を確認出来ます。
※ このとき「REPOSITORY」および「TAG」欄の記載をメモしておいて下さい。Docker hubへのアップロード時に使用します。
3. ローカルからDocker imageをpushする
Docker HubにDocker imageをアップロードする方法としては、以下2通りあります。今回は、方法1で手っ取り早くアップロードを完了させます。
- ローカルからDocker imageをpushする
- Github連携
3.1. Docker Hubにログイン
docker login
コマンドにより、Docker Hubにログインを行います。
ガイドに従い、CLI上でDocker IDとパスワードを入力します。
ログインに成功すると、上記のようにLogin Succeeded
と表示されます。
3.2. Docker HubにDocker imageをpushする
docker push
コマンドでDocker HubにDocker imageをpushします。
上記Docker images
で確認した「REPOSITORY:TAG」の記載により、pushしたいimageファイルを指定します。
docker push mtside01/blazor:latest
3.3. Docker Hubを確認する
Docker Hubにアクセスし、リポジトリを確認します。 成功すると、先程pushしたimage用のリポジトリが追加されているはずです。
4. Docker Hub上のDocker imageからコンテナを起動する
4.1. コンテナの起動
上記までの作業により、目的の環境を構築するためのDocker imageをDocker Hub上にアップロード出来ました。
以降、別PC等で新規環境構築時を行う際は、以下のように「アカウント名/リポジトリ名」を指定してdocker run
コマンドを実行するだけでコンテナを起動することが出来ます。
docker run -it --rm --name blazortest -p 8000:80 -v C:\blazor\dockerEnv\:/app -w /app mtside01/blazor
※ 上記コマンドにおける各オプションはそれぞれ以下を意味します。コマンド最後の「mtside01/blazor」は実行するdocker imageを指定しています。
-it
: docker runされたコンテナ内でbashシェルを表示-rm
: コンテナ終了時、自動的に削除--name
: コンテナの名前指定-p
: ポートの指定-v
: 「ホスト側ソース:コンテナ側送信先」の指定-w
: コンテナ内の作業ディレクトリ指定
Docker Hubからimageを自動的にpullした後に、コンテナが起動されます。
4.2. 現在起動しているコンテナの確認
念のため、docker ps
コマンドで現在立ち上がっているコンテナを確認しておきます。
※ 先程の-it
オプションにより、ターミナル上ではコンテナ内のbashシェルが表示されている状態なので、別途ターミナルを開いて実行します。
5. おわりに
今回まで3つの記事に渡り、Blazor開発環境構築を容易にするためのDocker利用方法(Docker Desktop環境、Docker file作成、Docker Hub利用)について記載しました。
Blazor以外にも、今回の手順を参考様々な開発環境に応用できるはずです。
この記事により、少しでも環境構築の煩わしさから開放されれば幸いです。