dockerhubについて

dockerhubとは、Dockerイメージをクラウド上で管理・共有できるWebサービスです。(githubのDocker版と考えると良いでしょう。)

公開されているイメージの利用

dockerhubで公開されているイメージは、自由にpullして利用することができますが、出どころが不明なイメージを利用するのはリスクを伴います。

dockerhubの検索ページ

検索ページにアクセスしたら、左側の「Official Images」というチェックボックスにチェックを入れることで、Dockerのオフィシャルイメージのみを表示させることができます。

通常は、オフィシャルイメージを利用してイメージを構築するのが望ましいでしょう。

  • mysql
  • postgres
  • ubuntu
  • centos
  • php
  • wordpress

など、様々な公式イメージを利用することが可能です。

自作イメージのアップロード

自作イメージをアップロードすることも可能です。 今回は、ubuntuイメージにvimを追加でインストールしたものをアップロードしてみましょう。

dockerhubへのサインアップ(ブラウザ)

まず、dockerhubの公式ページからサインアップを行います。

dockerhub

サインアップを完了すると、登録メールアドレスに認証メールが届きますので、認証を済ませておきます。

ubuntuコンテナの作成

イメージの作成方法は色々ありますが、今回はコンテナの状態をカスタマイズして、その状態でイメージに変換する方法で行います。

まずは、カスタマイズ元となるubuntuコンテナを作成し、ubuntu_vimと名付けておきましょう。

docker container create -it --name ubuntu_vim ubuntu:18.04

ubuntuコンテナの起動

続いて、container start コマンドでコンテナを起動しておきます。

docker container start ubuntu_vim

ubuntuコンテナへのログイン

さらに、container exec コマンドでコンテナのターミナルへログインします。

docker container exec -it ubuntu_vim bash

ubuntuコンテナにvimをインストール

では、このコンテナ内にvimをインストールしましょう。

まず、現時点で vim コマンドを実行してみます。

vim

すると、vimがまだインストールされていないため、以下のエラーメッセージが出力されます。

bash: vim: command not found

では、vimのインストールを行いましょう。 まず、インストール用のapt-getコマンドをupdateしておきます。(リポジトリの更新)

apt-get update

続いて、vimのインストールを行います。-yオプションは、インストール確認をスキップするオプションです。

apt-get install -y vim

インストールが完了したら、再度vimコマンドを実行し、vimが立ち上がることを確認しておきましょう。

vim

vimは :q コマンドで終了できます。

vimの起動を確認できたら、exitでコンテナからログアウトしておきましょう。

exit

ubuntuコンテナからイメージを作成

では、作成したvimインストール済みのubuntuコンテナを元にイメージを作成しましょう。

まず、container stop コマンドで、コンテナを停止しておきます。

docker container stop ubuntu_vim

続いて、container commitコマンドで作成したコンテナをイメージ化します。

docker container commit [コンテナ名] [dockerhubのユーザー名]/[任意のイメージ名]:[任意のタグ名]

container commit コマンドは上記の文法になっているので、今回は、

docker container commit ubuntu_vim [ユーザ名]/ubuntu_vim:1.0

として、イメージ化しておきましょう。(ユーザ名のところには、dockerhubで設定したユーザー名を入力します。)

イメージのテスト

では、作成したイメージを利用してみましょう。

docker container run --name ubuntu_vim_sample -it --rm [ユーザ名]/ubuntu_vim:1.0

上記のコマンドで、作成したイメージを元にコンテナを作成できます。

vim

vimコマンドを実行して、すでにvimがインストール済みであることを確認しておきましょう。確認が完了したら、exitコマンドでログアウトしておきましょう。

ターミナルからdockerhubへログインする

では、pushを行うために、dockerhubにターミナルからログインしましょう。

ターミナルからdockerにログインするためには docker login コマンドを利用します。

docker login -u [ユーザー名]

パスワードを聞かれるので入力してEnterキーを押します。

Login Succeeded

と出力されればOKです。

(なお、loginコマンドではlogin先を指定することで、別のリポジトリにログインすることも可能です。)

イメージをpushする

では、作成したイメージをdockerhubにpush(アップロード)しましょう!

docker push [ユーザ名]/ubuntu_vim:1.0

上記のコマンドを実行してしばらくするとdockerhubへのpushが完了します。

再度 dockerhubにアクセスすると

dockerhub

今回作成したイメージがリポジトリとしてdockerhubに登録されたことが確認できます。

results matching ""

    No results matching ""