[ノースフェイス] THE NORTH FACE メンズ アウター マウンテンライトジャケット
防水暴風で耐久性抜群なので旅行で大活躍です!
レッドブル エナジードリンク 250ml×24本
翼を授けよう!
モンスターエナジー 355ml×24本 [エナジードリンク]
脳を活性化させるにはこれ!
ドラゴンクエスト メタリックモンスターズギャラリー メタルキング
みんな大好き経験値の塊をデスクに常備しておこう!
Bauhutte ( バウヒュッテ ) 昇降式 L字デスク ブラック BHD-670H-BK
メインデスクの横に置くのにぴったりなおしゃれな可動式ラック!
MOFT X 【新型 ミニマム版】 iPhone対応 スマホスタンド
Amazon一番人気のスマホスタンド!カード類も収納出来てかさ張らないのでオススメです!
サンディスク microSD 128GB
スマホからSwitchまで使える大容量MicroSDカード!
スポンサーリンク
目次
簡単サーバー構築
前回の記事にて、Dockerfileを使ったコンテナの起動方法を紹介しました。
今回は同じようにDockerfileを使ってnginxを起動し、簡単なサーバーを立ち上げるところまでをご紹介しようと思います。
手順
前提
Dockerfileの作成
まずは以下のDockerfileを作成してください。
1 2 3 4 5 6 7 8 9 10 11 |
FROM centos:7 RUN yum update -y && yum clean all RUN yum install -y http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm RUN yum install -y --enablerepo=nginx nginx RUN yum swap -y fakesystemd systemd && yum clean all ADD index.html /var/www/html/ ADD nginx.conf /etc/nginx/conf.d/ RUN mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bk RUN systemctl enable nginx EXPOSE 80 ENTRYPOINT ["/usr/sbin/nginx", "-g", "daemon off;", "-c", "/etc/nginx/nginx.conf"] |
index.html
次にnginxに配置するindex.htmlを作成しましょう。
今回は単純にDocker内部のnginxに配置して表示確認するレベルのものでいいので以下の内容で良いです。
1 2 3 4 5 |
<html> <body> <h1>Hello, World! From Docker!!</h1> </body> </html> |
nginx.confの作成
次にnginxの設定ファイルも用意しましょう。
こちらも同じく表示確認レベルのもので良いです。
1 2 3 4 5 6 7 8 9 10 11 12 |
server { listen 80 default_server; root /var/www/html; index index.html index.htm; server_name nginx; location / { try_files $uri $uri/ =404; } } |
イメージファイルの作成
次に以下のコマンドでDockerイメージを作成しましょう。
1 |
docker build -t centos7/nginx_from_dockerfile --no-cache=true . |
コマンド実行後、以下の実行ログが表示されればimageファイルの作成は完了です。
以下のコマンドでimgaeファイルを確認してみましょう。
1 |
docker images |
無事にイメージファイルが作成されてますね。
コンテナ起動
では、実際にimageファイルからコンテナを作成して起動してみましょう。
以下のコマンドを実行してみてください。
1 |
docker run -d --name docker_nginx_server -p 8080:80 centos7/nginx_from_dockerfile |
docker runコマンドはコンテナをimageファイルから起動します。各オプションの意味としては、
-d | コンテナをデタッチドモード(バックグラウンド)で起動する |
---|---|
–name | コンテナ名を定義する |
-p | ホスト側のポート番号とコンテナ側のポート番号を紐付けて公開する |
特にエラーが出なければ、以下のコマンドでコンテナが実行されているか確認してみましょう。
1 |
docker ps |
コンテナが起動していて一覧に表示されていますね。
ブラウザアクセス
では、実際にブラウザからアクセス出来るか確認してみましょう。
http://localhost:8080
無事にアクセス出来ました!!
念のため、以下のコマンドでコンテナを停止してもう一度アクセスしてみましょう。
1 |
docker stop docker_nginx_server |
サーバーが停止しているのでアクセスが出来なくなりました。
コンテナの再起動
もう一度nginxコンテナを起動しようとして、先ほどのコマンドを実行すると、エラーが発生してしまいます。
これは、同じ名称のコンテナが存在していることを表すエラーです。
すでに作成済みのコンテナ再起動なので以下のコマンドで起動可能です。
1 |
docker start docker_nginx_server |
コンテナの削除
最後にお片づけをしましょう。
まずはコンテナの削除です。
以下のコマンドを実行してください。
1 |
docker rm docker_nginx_server |
イメージの削除
次にDockerイメージファイルの削除です。
以下のコマンドを実行してください。
1 |
docker rmi centos7/nginx_from_dockerfile |
これでコンテナとイメージを削除して元の状態に簡単に戻せます。
終わりに
如何だったでしょうか?
Dockerを使えばホストマシンにミドルウェアを入れる必要が無いので、環境構築もしやすくマシン内部を汚すことが無くなるので非常にスッキリします。
皆さんもDockerを使いこなして、環境構築のコストを抑えてみてください♪