Docker安装挂载本地Nginx
一. 安装nginx
1. 查找镜像
docker search nginx
2. 拉取镜像
docker pull nginx
3. 查看镜像
docker images
4.启动nginx容器
docker run -d --name mynginx -p 80:80 nginx
- -d 指定容器以守护进程方式在后台运行
- –name 指定容器名称,此处我指定的是mynginx
- -p 指定主机与容器内部的端口号映射关系,格式 -p
- [宿主机端口号]:[容器内部端口],此处我使用了主机80端口,映射容器80端口
- nginx 是nginx的镜像image 名称
5.查看创建的容器
docker ps -a
查看是否运行在线下浏览器访问,如果显示nginx默认页面则成功 ‘Welcome to nginx!’
二. 挂载宿主机
1. 查看需要挂载目录位置
docker exec -it mynginx /bin/bash
- exec 命令代表附着到运行着的容器内部
- -it 是 -i 与 -t两个参数合并写法,-i -t 标志着为我们指定的容器创建了TTY并捕捉了STDIN
- mynginx 是我们要进入的容器name
- /bin/bash 指定了执行命令的shell
执行退出容器内部
exit
2. 创建宿主机挂载目录
cd /mnt
mkdir -p ./nginx/{conf,html,logs}
cd nginx
docker cp mynginx:/etc/nginx/nginx.conf ./
dokcer cp mynginx:/etc/nginx/conf.d/default.conf ./conf/
- cp 命令代表复制
- mynginx是我们nginx容器的name,/etc/nginx/nginx.conf 是容器内部nginx.conf 路径
3. 停止并移除创建的nginx容器
docker stop mynginx
docker rm mynginx
- stop 停止容器指令
- rm 移除容器指令
4. 挂载宿主机启动创建nginx容器
docker run -d --name mynginx -p 80:80 -v /mnt/nginx/nginx.conf:/etc/nginx/nginx.conf -v /mnt/nginx/logs:/var/log/nginx -v /mnt/nginx/html:/usr/share/nginx/html -v /mnt/nginx/conf:/etc/nginx/conf.d --privileged=true nginx
- -v 挂载目录,格式 -v: 表示将主机目录与容器目录之间进行共享
- –privileged=true 容器内部对挂载的目录拥有读写等特权
5. 测试
在/mnt/nginx/html目录下创建index.html
cd /mnt/nginx/html
vi index.html
按i键 然后输入hello world 在按Esc键 输入x! 敲回车
线下访问