1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Dockerを使用して静的コンテンツをデプロイしてみた

Last updated at Posted at 2019-10-02

はじめに

この記事はコンテナ勉強用として試したことまとめたものです。
仕事でDockerを使ったアプリケーションデプロイをしているので、理解を深めるために自分でも簡単なアプリケーションデプロイを試してみました。

手順

  • CentOSをベースイメージとしてWebサーバに実行環境を構築する。
    • RUNコマンドでNginxをインストール
    • CMD命令でデーモンの実行
    • ONBUILDコマンドでWebコンテンツを配置

イメージのビルド

  • 以下内容でビルドを実行する。(Dockerfile.baseファイルとして保存)

# イメージ設定
FROM centos:7

# リポジトリ追加
COPY ./nginx.repo /etc/yum.repos.d/nginx.repo

# Nginxインストール
RUN yum -y install nginx

# ポート指定
EXPOSE 80

# Webコンテンツ配置
ONBUILD ADD website.tar /usr/share/nginx/html

# Nginx実行
CMD ["nginx", "-g", "daemon off;"]
  • コマンド実行

# docker build -t web-base -f Dockerfile.base ./
Sending build context to Docker daemon  717.3kB
Step 1/6 : FROM centos:7
 ---> 9f38484d220f
Step 2/6 : COPY ./nginx.repo /etc/yum.repos.d/nginx.repo
 ---> 663ac757cfe4
Step 3/6 : RUN yum -y install nginx
 ---> Running in accbe252a05c
Loaded plugins: fastestmirror, ovl
Determining fastest mirrors
 * base: ftp.tsukuba.wide.ad.jp
 * extras: ftp.tsukuba.wide.ad.jp
 * updates: ftp.tsukuba.wide.ad.jp
Resolving Dependencies

・・・(中略)・・・

Complete!
Removing intermediate container accbe252a05c
 ---> bef67394d4e0
Step 4/6 : EXPOSE 80
 ---> Running in e1f36112e98c
Removing intermediate container e1f36112e98c
 ---> 9c20f6dda90b
Step 5/6 : ONBUILD ADD website.tar /var/www/html/
 ---> Running in 5f1817472d21
Removing intermediate container 5f1817472d21
 ---> 69b8d93ce29e
Step 6/6 : CMD ["nginx", "-g", "daemon off;"]
 ---> Running in a22c79cffdc5
Removing intermediate container a22c79cffdc5
 ---> ab4088c1f974
Successfully built ab4088c1f974
Successfully tagged web-base:latest
#

Webコンテンツを開発

  • HTMLやCSSなどでwebsiteという形でtarファイルにまとめる。

Webサーバ用のイメージ作成

  • FROM命令で先ほど作成したイメージを指定する。(Dockerfileファイルとして保存)
# Dockerイメージの取得
FROM web-base
  • コマンド実行
# docker build -t photoview-image ./
Sending build context to Docker daemon  1.072MB
Step 1/1 : FROM web-base
# Executing 1 build trigger
 ---> 9f2e92d06358
Successfully built 9f2e92d06358
Successfully tagged photoview-image:latest
#

Webサーバのコンテナ起動

  • コマンド実行
# docker container run -d -p 80:80 photoview-image
01b50cdbfb99ad9ec78aa8182c691b8bdec080c83a18d8ae998b82a1f9095bef
#
  • アクセス確認
キャプチャ3.png

まとめ

  • 意外と簡単に構築できた。
  • Dockerfileの記述方法について理解を深めていきたい。

参考

1
1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?