#はじめに
この記事では Docker
で簡単なコンテナイメージを作成し、Docker Hub
で共有してみるまでを記しています。
初心者の記事ですので間違っていたら指摘等いただけると幸いです。
#環境
- macOS Catalina version 10.15.6
- Docker version 19.03.13
- Visual Studio Code version 1.42.1
#前提条件
Docker
をインストールしていること。
インストールしていない場合は以下のリンクを参考にインストールしてみてください。
たぶん動くから!Docker始めてみよう!
#コンテナイメージのビルド
コンテナイメージを作成するためにはコンテナの中身となる Dockerfile
を作成する必要があります。
以下のコードを書いて Dockerfile
という名前で保存します。
FROM ubuntu:20.04
CMD ["echo", "hello Docker!!"]
コードの内容はオペレーティングシステムである ubuntu
を呼び出し、 hello Docker!!
と出力しています。
ターミナルで Dockerfile
のディレクトリへ移動し、 docker build
コマンドを叩きます。
$ docker build -t hellodoc .
-t
オプションはイメージ名を指定できます。
.
は Dockerfile
が配置されているパスを示しています。Dockerfileの配置されたディレクトリでコマンドを打っているので .
ですね。
ビルド処理が終わったらコンテナイメージを動かしてみます。
$ docker run hellodoc
hello Docker!!
うまく動きましたね!
ローカルのコンテナイメージ一覧は docker images
コマンドで確認できます。
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hellodoc latest 32d0a84555ac 2 weeks ago 72.9MB
#コンテナイメージの共有
コンテナイメージの動作が確認できたらhello Docker!! と表示されるだけのクソコンテナイメージを Docker Hub
で共有してみます。
##Docker Hub への登録
Docker Hub
は名前からお分かりの通り、Git Hub
の Docker
の様なもの(個人的な認識です)で、様々なコンテナイメージが公開されています。
Docker Hub
のアカウントを持っていない人は Docker Hub のサインアップページ にアクセスし、サインアップします。
ターミナルから Docker Hub
にログインします。
$ docker login -u ■■■■■■■■■
Password: ************
Login Succeeded
■には登録したユーザーアカウントを、*にはパスワードを入力します。
##コンテナイメージの共有
コンテナイメージを共有するための形式でビルドします。
docker build -t ■■■■■■■■■/hellodoc:1.0.0 .
共有するためにはイメージ名の命名規則にルールがあります。
- イメージ名の前に自分の
Docker Hub
アカウント名の配下に配置する。(■の部分を各自のDocker Hub
アカウント名に変えてください。) - イメージ名の後に
:
とバージョンを記入する。
docker push
コマンドでコンテナイメージを登録します。
$ docker push ■■■■■■■■■/hellodoc:1.0.0
処理が終わったら Docker Hub
で確認してみましょう。
きちんと登録されていますね!
##コンテナイメージのダウンロード
登録されたコンテナイメージは docker pull
コマンドでローカルにダウンロードできます。
docker pull ■■■■■■■■■/hellodoc:1.0.0