【Docker入門】Nginxイメージからコンテナを起動させる2つの手順 | アントレプログラマー

【Docker入門】Nginxイメージからコンテナを起動させる2つの手順

Docker

こんにちは、ニキです。

Dockerを使えばNginxを簡単に利用できるのでおすすめです。

Dockerを使った環境構築の実務経験を踏まえて、具体的な手順を解説していきます。

注:ローカルマシンにDockerをインストール済みとして進めます。

Takaharu Niki

・Webエンジニア5年目。
・バックエンドを中心に、フロントエンドやDevOps業務も経験。
・現在は、自社サービス企業のテックリードとして従事。

Takaharu Nikiをフォローする

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ファイルの編集・表示

効率的に学習するならプログラミングスクールの検討もありです。

さらに詳しく学びたい方は、以下の書籍がおすすめです。

Docker/Kubernetes 実践コンテナ開発入門

コンテナ技術をこれから学びたい方、あるいはすでに基本的な知識を持っているが実践的なスキルを伸ばしたい方に最適な書籍です。この書籍では、Dockerの基本操作から始まり、Kubernetesでのクラスタ管理、サービスの自動化、スケーリング、ネットワークの設定といった高度な内容に至るまで、手厚くガイドしてくれます。

nginx実践入門

Nginxの構築と運用に関する幅広い知識を得られます。リアルなユースケースを元にした具体例が豊富に紹介されており、初心者から上級者まで、あらゆるレベルのエンジニアにとって実際の問題解決に役立ちます。

Takaharu Niki

・Webエンジニア5年目。
・バックエンドを中心に、フロントエンドやDevOps業務も経験。
・現在は、自社サービス企業のテックリードとして従事。

Takaharu Nikiをフォローする
Docker
Takaharu Nikiをフォローする
アントレプログラマー
タイトルとURLをコピーしました