Dockerイメージをビルドしてdocker-hubで管理する

Docker HubはDockerのレジストリサービスです。わかりやすく言うと、Dockerイメージの貯蔵庫です。

Dockerでイメージをビルド(作成)し、作成したイメージをDocker Hubに保存することが出来ます。保存したイメージはいつでも取得することができるので、よく使用する構成で作成したイメージを保存しておくとと便利です。

注意点としては、イメージを作成すると以降はイメージは縮小できません。これはイメージから削除しても履歴には残り続けるからです

Dockerfileの作成

次のように書いた普通のファイル。名前はDockerfileにする必要あり。

FROM centos:7 # ①
RUN yum install -y java # ②
ADD files/apache-tomcat-9.0.6.tar.gz /opt/ # ③
CMD [ "/opt/apache-tomcat-9.0.6/bin/catalina.sh", "run" ] # ④

DockerファイルからDockerイメージをビルドするコマンド

docker build -t タグ名 Dockerfileのあるディレクトリ

docker-hubリポジトリー作成

GUIでdocker-hubにアクセスし、リポジトリーを作成します。

docker-hubにPUSH

まずはdocker-hubにログインします。

ローカル端末のCLIで次のようにします。

> docker login
Authenticating with existing credentials...
Login Succeeded

IDとパスワードの入力が必要なのかと思っていましたが、何も入力していないでログインできました。どういう仕組みなんでしょう、便利です。

ログインしたらイメージをPUSHします。PUSHが成功したら保存が出来ています。

これで、docker-hubからいつでもイメージをプルすることができます。

参考

login — Docker-docs-ja 17.06 ドキュメント