一、安装Docker
二、拉取Nginx镜像
1、搜索nginx镜像
a、通过命令搜索
docker search nginx
如下图:
STARS:星数 OFFICIAL:官方认可
b、通过网站搜索镜像(查看版本)
Nginx镜像https://hub.docker.com/_/nginx/tags?page=1&ordering=-last_updated
2、拉取镜像
docker pull nginx:1.9.5
如下图:
3、查看安装情况
docker images
如果您使用 Docker Desktop 版,则会发现在images多出一个nginx 1.9.5 的镜像,如下图
三、启动容器
1、简单启动,进入容器查看文件
docker run --name=nginx_temp -d -p 8000:80 nginx:1.9.5
参数说明:
--name 容器名称
-d 守护进程
-p 端口映射(-p 8000:80 把容器内的80端口映射到主机8000)端口
如下图:
测试是否成功:
主机上访问:127.0.0.1:8000
8000 为 容器上的 80 端口,创建容器时80端口映射到了主机的8000端口
查看容器情况:
docker ps
如下图
如果您有Docker Desktop版,则会发现在Containers菜单多出一个nginx_temp的容器;如下图:
进入容器,查看常用文件位置,为下一步的文件挂载做准备
docker exec -it nginx_temp /bin/bash
如下图
查看常用文件
日志文件:/var/log/nginx
站点文件:/usr/share/nginx/html
配置文件:/etc/nginx/nginx.conf 、 /etc/nginx/conf.d/
在主机创建对应的文件目录,如下图:
把容器的文件对应拷贝到主机上
docker cp nginx_temp:/etc/nginx/nginx.conf e:/docker/nginx/
docker cp nginx_temp:/etc/nginx/conf.d e:/docker/nginx/conf
docker cp nginx_temp:/usr/share/nginx/html e:/docker/nginx/html
docker cp nginx_temp:/var/log/nginx e:/docker/nginx/logs
在拷贝的时候,可能会遇到下面问题:
是因为有些隐藏文件超级管理员才能复制,请在主机使用管理员运行的 cmd
处理好对应的文件,现在把 nginx_temp容器删掉 ,关闭所有命令窗口
2、创建完善容器
docker run --name=nginx -p 8000:80 -p 4430:443 -v E:/docker/nginx/nginx.conf:/etc/nginx/nginx.conf -v E:/docker/nginx/logs:/var/log/nginx -v E:/docker/nginx/html:/usr/share/nginx/html -v E:/docker/nginx/conf:/etc/nginx/conf.d -e TZ=Asia/Shanghai -d nginx:1.9.5
命令展开:
docker run
--name=nginx // 容器名称
-d // 守护进程
-p 8000:80 // 80端口映射到主机8000
-p 4430:443 // 443端口映射到主机4430
-v E:/docker/nginx/conf:/etc/nginx/conf.d // 挂载配置文件
-v E:/docker/nginx/nginx.conf:/etc/nginx/nginx.conf // 挂载配置文件
-v E:/docker/nginx/logs:/var/log/nginx // 挂载日志文件
-v E:/docker/nginx/html:/usr/share/nginx/html // 挂载站点文件
-e TZ=Asia/Shanghai // 设置时区
nginx:1.9.5 // 镜像
如下图:
运行
主机上访问:127.0.0.1:8000
8000 为 容器上的 80 端口,创建容器时80端口映射到了主机的8000端口