docker制作nginx静态网站示例

1. 环境

centos7

2. 配置步骤

本次配置的路径/home/dockerdir/,建立sample文件夹

cd /home/dockerdir
mkdir sample
cd sample

2.1Dockerfile配置

进入/home/dockerdir/sample目录,touch Dockerfile,vim Dockerfile

输入以下内容

FROM centos
MAINTAINER ZHAO GJ "reco@example.com"
ENV REFERSHED_AT 2018-04-29
RUN rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
#RUN yum update
RUN yum -y install nginx
RUN mkdir -p /var/www/html
ADD nginx/global.conf /etc/nginx/conf.d/
ADD nginx/nginx.conf /etc/nginx/nginx.conf
EXPOSE 80

2.2nginx.conf获取

参考第一本docker书,在终端执行如下命令获取nginx.conf等配置文件

cd /home/dockerdir/sample
mkdir nginx && cd nginx
wget https://raw.githubusercontent.com/jamtur01/dockerbook-code/master/code/5/sample/nginx/nginx.conf
wget https://raw.githubusercontent.com/jamtur01/dockerbook-code/master/code/5/sample/nginx/global.conf

获取index.html文件如下

cd /home/dockerdir/sample
mkdir website
wget https://raw.githubusercontent.com/jamtur01/dockerbook-code/master/code/5/sample/website/index.html

2.3配置

nginx.conf配置文件如下

user root root;
worker_processes 4;
pid /run/nginx.pid;
daemon off;
events {  }
http {
  sendfile on;
  tcp_nopush on;
  tcp_nodelay on;
  keepalive_timeout 65;
  types_hash_max_size 2048;
  include /etc/nginx/mime.types;
  default_type application/octet-stream;
  access_log /var/log/nginx/access.log;
  error_log /var/log/nginx/error.log;
  gzip on;
  gzip_disable "msie6";
  include /etc/nginx/conf.d/global.conf;
}

global.conf配置文件如下

server {
        listen          0.0.0.0:80;
        server_name     _;

	location / {
		root            /var/www/html/website;
        	index           index.html index.htm;
	}
        access_log      /var/log/nginx/default_access.log;
        error_log       /var/log/nginx/default_error.log;
}

website下index.html文件内容如下

<head>
<title>Test website</title>
</head>
<body>
<h1>This is a test website</h1>
</body>

最后生成的目录及文件如下


在sample文件夹(即Dockerfile所在目录),有nginx目录和website目录,nginx目录下有nginx.conf、global.conf,website下为index.html

2.4生成镜像

执行如下命令,生成镜像

cd /home/dockerdir/sample#进入Dockerfile所在目录
docker build -t reco01/nginx .

其中,reco01/nginx为镜像名

出现如下提示,则说明build成功


3.启动

在执行如下命令,启动docker容器

docker run -d -p 80 --name website -v $PWD/website:/var/www/html/website reco01/nginx nginx

或者

docker run -i -t -p 80 --name website -v $PWD/website:/var/www/html/website reco01/nginx nginx

4.查看容器或镜像状态

docker ps -a

docker rm 容器id 或docker rm 容器名称,删除所有容器docker rm `docker ps -a`

docker rmi 镜像名,如docker rmi reco01/nginx,删除所有本地镜像:docker rmi docker 


注意:1. nginx.conf配置文件中user 改为使用的用户组、用户名user root root

2. Dockfile中yum -y install nginx

参考:《第一本docker书》5.1

可下载本次配置

docker nginx静态网站示例

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值