こんにちは、ニキです。
Dockerを使えばNginxを簡単に利用できるのでおすすめです。
Dockerを使った環境構築の実務経験を踏まえて、具体的な手順を解説していきます。
注:ローカルマシンにDockerをインストール済みとして進めます。
Nginxのイメージからコンテナを起動させる2つの手順
NginxのDockerイメージを取得する
イメージをDocker Hubから取得します。
https://hub.docker.com/_/nginx
執筆時の最新バージョンを取得しています。
% docker pull nginx:1.25.1-alpine-slim
イメージサイズの軽量化のためにnginx:1.25.1ではなく、nginx:1.25.1-alpineを使用しています。
NginxのDockerイメージからコンテナを起動する
先ほど取得したイメージからコンテナの作成・実行を行います。
% docker run -d -p 8080:80 --name nginx nginx:1.25.1-alpine-slim
オプションについて説明します。
- -d
コンテナをバックグラウンドで実行します。
- -p
ホストとコンテナのポートをマッピングします
-p ホストのポート:コンテナのポート
- –name
コンテナに名前を付けます。
このオプションが無いと、ランダムな文字列がコンテナ名になります。
コンテナを操作する時に便利なので、指定しておくと便利です。
すべてのオプションは以下で確認できます。
% docker run --help
ウェルカムページを確認します
http://localhost:8080/ へアクセスすると、以下のように表示されます。
自分で作成したHTMLファイルを表示させる
まず、コンテナに入ります。
% docker exec -it nginx ash
ashシェルを使用していますが、使用しているコンテナによって使用可能なシェルコマンドが異なる場合があります。
設定ファイルを確認し、ルートディレクトリを確認します。
# cat /etc/nginx/conf.d/default.conf
以下のように設定されているはずです。
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
htmlファイルを編集します。
# vi /usr/share/nginx/html/index.html
編集例:
<html>
<head>
<title>Hello Nginx!</title>
</head>
<body>
<h1>Hello Nginx!</h1>
</body>
</html>
http://localhost:8080/ へアクセスすると、以下のように表示されます。
まとめ
以下の手順を解説しました。
- NginxのDockerイメージの取得
- コンテナの作成・起動
- HTMLファイルの編集・表示