Dockerの自動化ビルド

GitHubにプッシュするとDockerが自動的にビルドするようにします。
オライリーの『Docker』を読んだのですが、DockerHubのユーザーインターフェースが変わったのか、本書の説明ではちんぷんかんぷん。

今後のために、作業手順をメモっておきます。

以下の作業では、
GitHubのアカウント:pgeny
DockerHubのアカウント:maikonp
を使用しています。

Git側の作業

空のリポジトリ(https://github.com/pgeny/myubuntu)を作成する。

ローカルリポジトリにDockerfileを登録する。
■Dockerfileの内容

FROM ubuntu:18.04

■入力するコマンド群

$ mkdir myubuntu
$ cd myubuntu
$ git init
$ git add Dockerfile
$ git commit
$ git remote add origin https://github.com/pgeny/myubuntu

Docker側の作業

右上のプルダウンメニューからAccount Settings⇒Linked Accountsを実行し、参照するGitHubのアカウントを登録する。

画面右上のCreate Repositoryをクリックして、リポジトリを作成する。

Create Repository画面に移行するので、必要事項を入力する(最初の作成時は、タグ名はlatest固定のようです)。

Connectedのアイコンをクリックして、自動ビルドするGitHubのリポジトリを選択する。

CreateもしくはCreate & Buildをクリックします。Create & Buildをクリックした場合は、Dockerリポジトリの作成後、イメージのビルドが行われます。
ここでは、Createをクリックしたものとして先に進みます。

上段メニューのBuildsタグをクリックする。

Automated Buildsの欄のTriggerボタンをクリックすればビルドが開始されます。
ただし、今はTriggerをクリックせずに次へ進みます。

自動ビルドのテスト

ローカルのDockerfileを修正し、GitHubにプッシュします。
DockerHubのページをリロードすると、ビルドが開始されているのがわかります。

しばらくしてリロードすると、Build StatusにSUCCESSと表示されビルドが終了します。

この状態でローカルでdocker runコマンドを入力すれば、ビルドされたイメージがダウンロードされて実行されます。

$ docker run maikonp/myubuntu:18.04 /bin/bash