ドッカー画像の作成

ドッカー画像の作成

自分だけのドッカーイメージを作りたいです。私はDockerfileを使って作成し、httpdサーバーとmysqlクライアントを実行したかったです。下から私の編集ファイルを見ることができます。私のDockerfileは正しいですか?

# Dockerfile that modifies oraclelinux:6.6 to include an Apache HTTP server
FROM ubuntu:14.04

RUN apt-get -y install apache2

RUN echo "HTTP server running on guest" > /var/www/html/index.html

EXPOSE 80

RUN apt-get -y install mysql-client

EXPOSE 3306

ベストアンサー1

いいえ、最後にCMDを実行する必要があるため、これは正しくありません。

また、少数の中間コンテナスナップショットと、より少ない出力を生成するためのいくつかのベストプラクティスも含める必要があります。

  • apt-get何度も実行しないでください。
  • apt-get update走る前に走らなければならないapt-get install
  • ランニング後はきれいに整理する必要がありますapt-get install
  • 管理者を含める必要があります。

次のようにしてみてください。

# Dockerfile that modifies oraclelinux:6.6 to include an Apache HTTP server
FROM ubuntu:14.04

MAINTAINER Supun Rathnayake

RUN apt-get update && apt-get install -y \
  apache2 \
  mysql-client \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*

RUN echo "HTTP server running on guest" > /var/www/html/index.html

EXPOSE 80

EXPOSE 3306

CMD ["your command to run apache"]

おそらくdocker-hubのapache2プロジェクトを見てみるべきでしょう。このプロジェクトには多くのダウンロードがあり、Dockerfileが分析されていて非常に有益です。

原則として、同じコンテナでmysqlクライアントを実行できますが、これにはapacheおよびmysqlデーモンを起動するためのいくつかのスケジューラが必要になる場合があります。または、mysqlを別の場所に配置することを検討する必要があります(またはDockerhubの標準コンテナの1つを使用してコンテナに接続)。

おすすめ記事