Docker 安装 Nginx

一.拉取Nginx 镜像

docker pull nginx

二.先安装一个Nginx 以便拷贝nginx配置文件

docker run --name nginxTest  -d nginx

三.从已安装容器中拷贝配置文件

docker cp nginxTest:/etc/nginx/nginx.conf /root/nginx/nginx.conf

   1. cp   //拷贝命令

   2.  nginxTest:/etc/nginx/nginx.conf   //容器nginxTest nginx配置文件地址

   3. /root/nginx/nginx.conf    //宿主机用于挂载容器Nginx配置的地址

四.删除之前安装的临时镜像

docker stop nginxTest   //先停止容器
docker rm nginxTest       //再删除容器
 

五.切换目录到nginx地址

cd ~/nginx        //若无nginx 文件夹新建

六.安装正式容器

docker run -p 80:80 --name mynginx -v $PWD/www:/www -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/logs:/wwwlogs -d nginx
1. -p 80:80  //把本机80端口 映射到 docker容器
2. --name mynginx //名称为mynginx
3. -v $PWD/www:/www //把当前目录下的www 文件夹 挂载到 docker的 www 目录
4. -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf //把当前目录下的conf/nginx.conf 挂载到 docker容器的/etc/nginx/nginx.conf文件上
5. -d nginx 以守护进程方式加载镜像 nginx

总结之所以要先安装并把nginx配置文件临时容器拷贝到宿主机,是因为宿主机如果nginx配置文件与容器nginx不一致无法挂载
回报异常:
Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.
posted @ 2018-12-20 14:25  姜秋实  阅读(1196)  评论(0编辑  收藏  举报