1.版本信息
通过 docker version 命令可以获取当前docker版本信息
Client:
Version: 1.13.1
API version: 1.26
Package version: docker-1.13.1-103.git7f2769b.el7.centos.x86_64
Go version: go1.10.3
Git commit: 7f2769b/1.13.1
Built: Sun Sep 15 14:06:47 2019
OS/Arch: linux/amd64
Server:
Version: 1.13.1
API version: 1.26 (minimum version 1.12)
Package version: docker-1.13.1-103.git7f2769b.el7.centos.x86_64
Go version: go1.10.3
Git commit: 7f2769b/1.13.1
Built: Sun Sep 15 14:06:47 2019
OS/Arch: linux/amd64
Experimental: false
2.部署nginx镜像
2.1 搜索nginx镜像
通过 docker search nginx 命令搜索nginx相关镜像
docker search nginx
如下是部分搜索结果,OFFICIAL 表示是官方镜像
2.2 拉取nginx镜像
通过 docker pull nginx 命令拉取nginx镜像,默认是latest版本
docker pull nginx
拉取成功后,可以通过 docker images 确认镜像
docker images
2.3 启动默认nginx镜像
通过以下指令启动nginx镜像
docker run -d -p 80:80 --name my-nginx nginx
- -d 表示后台运行
- -p 表示指定端口映射
- –name 表示指定名称
通过以下命令确认nginx容器运行状态
docker ps -a
- -a 查看全部容器运行状态
2.4 复制nginx配置
通过 docker cp 可以完成容器内外的复制操作,我们新建一个**/opt/nginx**目录用于保存相关配置
# 切换至opt目录
cd /opt/
# 创建nginx等目录接口
mkdir -p /opt/nginx
# 复制配置文件
docker cp nginx:/etc/nginx/ /opt/
2.5 停止并移除原有nginx容器
通过 docker stop 容器名/Id命令可以停止正在运行的容器
docker stop my-nginx
通过 docker rm 容器名/Id命令可以移除停止状态的容器
docker rm my-nginx
2.6 使用配置重启nginx镜像
docker run -d --name my-nginx \
-p 80:80 \
-v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /opt/nginx/conf.d:/etc/nginx/conf.d \
-v /opt/nginx/logs:/var/log/nginx nginx
- -v 冒号前是挂载的本地文件目录,冒号后是容器内目录
2.7 使用inspect查看已经运行的容器配置
docker inspect nginx
3.常见问题
3.1 nginx镜像中系统时间错误,与宿主机时间相差8小时
产生原因是容器与宿主器采用的时区不一致,解决方法:
# 常见的解决方式可以挂载宿主机系统时间,启动时添加如下参数:
-v /etc/localtime:/etc/localtime
# 完整命令
docker run -d --name my-nginx \
-p 80:80 \
-v /etc/localtime:/etc/localtime \
-v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /opt/nginx/conf.d:/etc/nginx/conf.d \
-v /opt/nginx/logs:/var/log/nginx nginx
3.2 修改本地nginx配置,如何使其生效
可以在宿主机环境下修改好nginx配置,然后进去容器环境,执行nginx相关指令使其生效,方法如下:
# 进入容器环境
docker exec -it my-nginx /bin/bash
# 确认配置容易
cat /etc/nginx/nginx.conf
# 检查配置文件是否正确(养成好习惯)
/usr/sbin/nginx -t
# 重启nginx
/usr/sbin/nginx -s reload
作者是一个技术肥宅,还在不断的学习进步中,十分欢迎各位 杠精 读者指出文中不足之处,快来给我留言吧;欢迎转载,烦请注明出处。
- 本文链接: https://www.sunce.wang/archives/docker部署nginx指南
- 版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0 许可协议。转载请注明出处!