dockerでnginxアプリケーションをデプロイする方法
Nginxアプリケーションをデプロイするには、Dockerを使用できます。以下にそのプロセスを完了するためのいくつかの手順を紹介します。
- 最初にDockerをインストールする必要があります。オペレーティングシステムの種類に応じた適切な方法でインストールしてください。
- nginxの設定ファイルや関連する静的ファイルを保存するための新しいディレクトリを作成します。たとえば、nginx-appという名前のディレクトリをローカルに作成できます。
- nginx-appディレクトリで、NginxイメージをビルドするためのDockerfileファイルを作成します。Dockerfileファイルを開き、以下を追加します。
FROM nginx:latest
COPY nginx.conf /etc/nginx/nginx.conf
COPY static-html-directory /usr/share/nginx/html
最新バージョンのNginxをベースイメージとして設定し、Nginxの設定ファイルnginx.confと関連する静的ファイルをコンテナーにコピーします。nginx.confとstatic-html-directoryを実際の設定ファイルと静的ファイルディレクトリに置き換えてください。
- nginx-アプリ
- nginx.conf
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html;
}
}
本例のコンフィグレーションは80番ポートをリッスンします。ルートディレクトリは/usr/share/nginx/htmlに設定され、index.htmlをデフォルトのインデックスファイルとして利用します。
- 静的ファイルは、それらが正しい場所に配置されていることを確認して、static-html-directoryディレクトリにコピーします。
- nginx-appディレクトリのターミナルを開き、以下のコマンドを実行してNginxイメージをビルドします。
docker build -t nginx-app .
Dockerfile ファイルの命令を使用して nginx-app というイメージがビルドされます。
- 構築が終わったら、以下のコマンドを実行してnginxコンテナを起動してください。
docker run -d -p 80:80 --name nginx-container nginx-app
nginx-containerという名前のコンテナをバックグラウンドで実行し、コンテナの80番ポートをホストの80番ポートにマッピングします。
今、NginxアプリはDocker内に展開され、http://localhostへアクセスする事でアクセス可能になりました。