Dockerイメージpush手順


ただ"docker image push ~"とコマンドを打つだけではうまくいきません。Dockerイメージをpushする手順を以下にまとめます。

対象

本などで"docker image push"の概要は知っているが、実践したら失敗した人

手順

以下のDocerfileを例にして説明します。

FROM alpine:latest
EXPOSE 80
RUN apk add --no-cache net-tools
RUN apk add --no-cache nmap-nping
ENTRYPOINT ["nping", "-c", "3", "--tcp", "-p", "80"]
  1. Dockerイメージをbuildする

    docker image build -t sample/ping:latest .
    
  2. 一旦コンテナまで作成し、そのコンテナを元にDockerイメージをcommitする

    docker container run -p 80:80 --name ping  sample/ping:latest www.google.co.jp
    

    コンテナ実行結果:

    docker container commit ping {DockerID}/ping:latest
    
  3. DockerHubにログインする

    -p オプションをつけるとパスワードが画面に表示されることになります。-p オプションはコマンド履歴を見ることのできる環境では使わないでください。

    docker login -u {DockerID}
    
  4. Dockerイメージをpushする

    パブリックリポジトリの場合、CLIからpushすると、リポジトリは自動的に作成されます。

    docker image push {DockerID}/ping:latest
    

終わりに

Dockerイメージをpushする手順をまとめました。効率的なコンテナ運用に役立てていただければ幸いです。

参考

Docker コマンド

Docker のインストールからレポジトリへのpush までやってみた【CentOS 7】

Dockerでcommitしてみる

Docker imageのpushに失敗したらログインし忘れが原因かも