Docker-building-web-server-docker-file
提供:Dev Guides
Docker-WebサーバーDockerファイルの構築
Docker Fileを使用して独自のカスタムイメージを作成する方法を既に学習しました。 それでは、コンテナの構築に使用できるWebサーバーイメージを構築する方法を見てみましょう。
この例では、UbuntuでApache Webサーバーを使用してイメージを構築します。 以下の手順に従って、ウェブサーバーのDockerファイルを作成しましょう。
ステップ1 *-最初のステップは、Dockerファイルをビルドすることです。 *vim を使用して、次の情報を含むDockerファイルを作成しましょう。
FROM ubuntu
RUN apt-get update
RUN apt-get install –y apache2
RUN apt-get install –y apache2-utils
RUN apt-get clean
EXPOSE 80 CMD [“apache2ctl”, “-D”, “FOREGROUND”]
上記のステートメントについては、次の点に注意する必要があります-
- まず、Ubuntuベースイメージから作成するイメージを作成します。
- 次に、RUNコマンドを使用して、Ubuntuシステム上のすべてのパッケージを更新します。
- 次に、RUNコマンドを使用して、イメージにapache2をインストールします。
- 次に、RUNコマンドを使用して、必要なユーティリティapache2パッケージをイメージにインストールします。
- 次に、RUNコマンドを使用して、システムから不要なファイルを削除します。
- EXPOSEコマンドは、コンテナ内のApacheのポート80をDockerホストに公開するために使用されます。
- 最後に、CMDコマンドを使用して、バックグラウンドでapache2を実行します。
ファイルの詳細が入力されたので、ファイルを保存するだけです。
ステップ2 *-Docker *build コマンドを実行してDockerファイルをビルドします。 それは次のコマンドを使用して行うことができます-
sudo docker build –t=”mywebserver” .
画像に mywebserver のタグを付けています。 イメージが構築されると、ファイルが構築されたことを示す成功メッセージが表示されます。
ステップ3 *-Webサーバーファイルが構築されたので、今度は画像からコンテナを作成します。 これを行うには、Docker *run コマンドを使用します。
sudo docker run –d –p 80:80 mywebserver
上記のコマンドについて次の点に注意する必要があります-
- コンテナによって公開されるポート番号は80です。 したがって、 – p コマンドを使用して、同じポート番号をローカルホストの80ポート番号にマッピングしています。
- –d オプションは、コンテナを分離モードで実行するために使用されます。 これは、コンテナがバックグラウンドで実行できるようにするためです。
WebブラウザーでDockerホストのポート80に移動すると、Apacheが稼働中であることがわかります。