LoginSignup
54
44

More than 3 years have passed since last update.

Docker Composeを使ってサクッとNginxコンテナを起動する

Last updated at Posted at 2018-12-07

前提・環境

・Windows10 Pro
・Docker for Windows(コマンドプロンプトで「docker --version」や「docker-compose --version」を打ってバージョン番号が表示されること)

Docker Composeとは

Docker Composeとは、複数のコンテナを使うDockerアプリケーションを、定義・実行するツールです。開発中や運用時に複数のDockerコンテナを使うと管理が煩雑になりますが、Docker Composeを利用することで環境構築における構築手順を自動化することができたりするので、煩雑さを軽減することができます。

NginxをDocker Hubから取得

以下のコマンドでDocker HubからNginxのイメージを取得します。

docker pull nginx:latest

次に以下のコマンドでnginxのイメージが取得できているかを確認します。

docker images   ※もしくはdocker images nginx

REPOSITORYにnginxが存在すればOKです。

Dockerfileの作成

# base imgae(docker imagesコマンドで表示されたREPOSITORYを指定)
FROM  nginx:latest

# author
MAINTAINER  nagaoka

ADD default.conf /etc/nginx/conf.d

RUN echo "now building..."

docker-compose.ymlの作成

docker-compose.yml
version: '3'
services:
  nginx:            // ※1
    build: .        // ※2
    ports:
      - "8080:80"        // ※3
    volumes:
      - ./public:/usr/share/nginx/html        // ※4

※1任意の名前を指定
※2Dockerfileからコンテナ生成・起動する場合。Dockerfileを利用しない場合は、image: nginxと記述
※3「ホスト側のポート:コンテナ側のポート」の形式。ホスト側のブラウザ等でhttp://localhost:8080 とアクセスすると、コンテナ側の80ポートへフォワードされる
※4「ホスト側のディレクトリ:コンテナ側のディレクトリ」の形式。左記の例だと、docker-compose.ymlが配置されたディレクトリにあるpublicというディレクトリがコンテナ側の「/usr/share/nginx/html」にマウントされる

コンテナ起動

以下のコマンドでnginxを起動します。

docker-compose up

以上です。

参考

http://docs.docker.jp/v1.12/compose/index.html
http://docs.docker.jp/v1.12/compose/compose-file.html#service-configuration-reference

54
44
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
54
44