1. 下载nginx镜像
docker pull nginx
2. 运行容器(复制配置文件用于目录挂载)
docker run --name nginx-temp -p 80:80 -d nginx
3.创建数据卷目录
mkdir -p /app/nginx/conf
mkdir -p /app/nginx/log
mkdir -p /app/nginx/html
4. 复制配置文件到宿主机目录下(挂载目录)
# 将容器nginx.conf文件复制到宿主机
docker cp nginx:/etc/nginx /app/nginx/conf
# 将容器conf.d文件夹下内容复制到宿主机
docker cp nginx:/usr/share/nginx/html /app/nginx/html
# 将容器中的html文件夹复制到宿主机
docker cp nginx:/var/log/nginx /app/nginx/logs
5.删除容器实例
docker rmi -f 容器id
6.重新运行容器实例进行文件挂载
docker run --restart=always --name=nginx -p 80:80 \
-v /app/nginx/conf:/etc/nginx \
-v /app/nginx/html:/usr/share/nginx/html \
-v /app/nginx/logs:/var/log/nginx \
-v /app/nginx/front_page:/home/front_page \
-d nginx:latest
7.运行 docker ps 查看启动容器
测试文件挂载与访问
1.切换目录 cd /app/nginx/html 2.编辑文件,新增点内容,访问nginx,首页内容有变化,说明挂载目录配置正确。 vim index.html
8.自定义目录挂载测试
- 切换到挂载目录
cd /app/nginx/front_page
- 创建text.html 随便写入一些内容
vim test.html
- 配置nginx
1.切换到 nginx 挂载配置目录下
cd /app/nginx/conf/conf.d/
2.编辑配置文件
vim default.conf
3.新增
location /test {
alias /home/front_page;
index test.html;
}4. 重启nginx
docker restart nginx5. 访问资源 http://ip:端口/test/ 结果如图,说明自定义目录挂载配置正常。