【Docker】Docker集成Nginx部署静态网站

165 阅读1分钟

前言

本片文章讲解如何通过nginx容器搭建一个静态网站

前置条件


正文

我这里已经安装好Docker环境,并拉取centos基础镜像,还是基于centos基础镜像来构建,不了解相关概念参考以上文章

1. 创建目录编写Dockerfile

我的目录结构如下,文件位置要和Dockerfile指定位置对的上

  • 基于centos基础镜像安装nginx
FROM centos
MAINTAINER zcl "pianozcl@gmail.com"
RUN yum install -y nginx
EXPOSE 80

2. 构建镜像

docker build -t pianozcl/nginx_web .


3. 配置静态页面

新建目录,用于挂载静态页面

测试hello.html文件

<head>
<title>webtest</title>
</head>
<body>
<h1>hello world</h1>
</body>

4. 启动容器

  • -v 宿主机和容器间的目录映射
  • $PWD 是宿主机,因为我在website目录下之行该命令,可用这种变量形式代替

  • /usr/share/nginx/html docker容器root默认目录
docker run -d -p 80:80 --name website -v $PWD:/usr/share/nginx/html pianozcl/nginx_web nginx -g "daemon off;"

访问浏览器可以看到刚才部署的页面。若要对页面作出修改,只需要修改宿主机映射目录下的文件,无需重新启动。这也是-v参数的作用