docker安装nginx

1.拉取镜像

 docker pull nginx 

2.创建容器

 docker run -d --name nginx -p 80:80 nginx 

3.复制容器中配置文件到宿主机

 docker cp nginx:/etc/nginx/nginx.conf /usr/local/nginx     //提前创建好/usr/local/nginx目录

// cp命令用于容器与宿主机之间数据拷贝

// 容器拷贝到宿主机  docker cp 容器名:容器目录 宿主机目录

// 宿主机拷贝到容器  docker 宿主机目录 容器名:容器目录

// 不管容器是否启动,拷贝命令都会立即生效,如果内容有重复,会自己覆盖不会提醒

4.删除nginx容器

 docker rm -f nginx         // -f 强制删除,可以删除正在运行的容器

5.创建容器并挂载配置文件,映射端口

 docker run --name nginx -p 80:80 -itd --privileged=true -v /usr/local/nginx/nginx.conf:/etc/nginx/nginx.conf -v /usr/local/nginx/logs:/var/log/nginx -v /usr/local/nginx/html:/usr/share/nginx/html -v /usr/local/nginx/conf:/etc/nginx/conf.d nginx  

// 需要添加--privileged=true,否则会报 nginx: [emerg] open() "/etc/nginx/nginx.conf" failed (13:Permission denied),意思是挂载失败,没有权限

// 这样下次就可以直接修改宿主机的配置文件,然后docker restart nginx重启容器,或者进入容器内部修改配置文件,那么宿主机的配置文件也会同步更新

//并不是根目录下任何一个目录都可以作为挂载点,由于挂载操作会使得原有目录中文件被隐藏,因此根目录以及系统原有目录都不要作为挂载点,会造成系统异常甚至崩溃,挂载点最好是新建的空目录。

原文地址:https://www.cnblogs.com/coderxiaobai/p/13651349.html