1、启动一个centos基础系统

[root@docker ~]# docker run -it --name mynginx centos /bin/bash
[root@a8882e2ef0d9 /]#

2、安装wget,默认没有的

[root@a8882e2ef0d9 /]# yum install -y wget

3、安装nginx

[root@a8882e2ef0d9 /]# yum install -y nginx

4、修改配置

[root@a8882e2ef0d9 ~]# vim /etc/nginx/nginx.conf #修改参数
找到user nginx;,在他下面加上一行 daemon off;(禁止后台运行,docker不允许nginx后台运行)

也可以添加自己优化的一些参数,修改完成后记得nginx -t检查下配置文件

5、启动nginx

[root@a8882e2ef0d9 ~]# nginx

正常情况下,此时进程是夯住的,所以另外打开一个ssh渠道提交一个新镜像

docker commit -m "nginx images" mynginx nginx:v1

至此就可以了,可以启动镜像访问端口测试

6、默认容器运行环境是root,现在一些公司为了安全起见,禁止容器内root环境,所以有这个需求的可以重做下镜像

先编写dockerfile

FROM nginx:v1
RUN chmod +s /usr/sbin/nginx
USER nginx
CMD ["/usr/sbin/nginx"]
docker build -t nginx:v2 .

得到的新镜像默认就是非root环境了

nginx的docker镜像下载 docker构建nginx镜像_nginx docker镜像