docker-运行nginx服务
docker-运行nginx服务
cat /etc/os-release

docker -v

.a.直接拉取失败

.b.设置腾讯云的镜像地址
CentOS 7/Ubuntu 22.04:
编辑 /etc/docker/daemon.json 文件:
sudo vim /etc/docker/daemon.json
添加以下内容(https://mirror.ccs.tencentyun.com为腾讯云内网镜像加速地址):
{
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
}

CentOS 6/Debian等:
编辑 /etc/default/docker 文件:
sudo vim /etc/default/docker
添加以下内容:
DOCKER_OPTS="--registry-mirror=https://mirror.ccs.tencentyun.com"
.c.重启Docker服务
执行以下命令使配置生效:
sudo systemctl restart docker
验证配置
检查是否生效:
sudo docker info | grep "Registry Mirrors"
若返回包含 https://mirror.ccs.tencentyun.com 的地址,则表示配置成功。
注意事项:
https://mirror.ccs.tencentyun.com 仅支持腾讯云内网访问,不支持外网域名加速。
.d.再次拉取nginx镜像。

查看镜像 docker images

.e.测试服务是否可正常启动,没报错,说明启动成功。
docker run -d --name test-nginx -p 8080:80 nginx

停止服务

.f.拉取制定版本的nginx服务器。
docker pull nginx:1.24.0

.g.使用挂载指令启动nginx服务器
docker run --name nginx -p 443:80 \
-v /opt/u01/exam/nginx/html:/usr/share/nginx/html \
-v /opt/u01/exam/nginx/log:/var/log/nginx \
-v /opt/u01/exam/nginx/nginx.conf:/etc/nginx/nginx.conf \
-d 6c0218f16876
命令解释:
docker run 表示启动docker 容器
--name nginx 表示给容器起一个名称
-p 8080:8080 表示将宿主机的443端口映射到nginx容器中的80端口中
-v /opt/u01/exam/nginx/html:/usr/share/nginx/html 将宿主机上的静态文件目录,挂载到nginx容器中的静态目录中
-v /opt/u01/exam/nginx/log:/var/log/nginx 将宿主机上的日志目录,挂载到nginx容器中的日志目录中
-v /opt/u01/exam/nginx/nginx.conf:/etc/nginx/nginx.conf 将宿主机上的nginx.conf配置文件,挂载到nginx容器的配置文件上
-d 6c0218f16876 表示以指定镜像ID启动nginx容器,因为自己使用的nginx版本为1.24.0,不是最新版本,因此需要添加该行命令,
并且需要添加到最后面。
\ 表示指令换行,一行指令太长的时候,就可以换行。
文件/目录挂载的目的:让容器中的nginx运行时,使用宿主机上的配置文件和静态文件,并且将日志打印到宿主机上自定义的目录中。
.h.删除上面启动的nginx服务,重新启动服务器,重新使用挂载服务。

docker run --name nginx -p 8080:8080 \
-v /opt/u01/exam/nginx/html:/usr/share/nginx/html \
-v /opt/u01/exam/nginx/log:/var/log/nginx \
-v /opt/u01/exam/nginx/nginx.conf:/etc/nginx/nginx.conf \
-d 6c0218f16876
一定注意:容器内的nginx服务器使用的是自定义的端口,因此在将端口写为 8080:8080
表示将服务器上的8080端口映射到nginx容器内的8080端口上。
.i.服务启动好之后,使用命令 curl localhost:8080 测试是否可以正常访问。
出现下面的界面,表示访问成功。

浙公网安备 33010602011771号