Centos7下Docker部署Nginx

Posted itLaity

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7下Docker部署Nginx相关的知识,希望对你有一定的参考价值。

生命无罪,健康万岁,我是laity。

我曾七次鄙视自己的灵魂:

第一次,当它本可进取时,却故作谦卑;

第二次,当它在空虚时,用爱欲来填充;

第三次,在困难和容易之间,它选择了容易;

第四次,它犯了错,却借由别人也会犯错来宽慰自己;

第五次,它自由软弱,却把它认为是生命的坚韧;

第六次,当它鄙夷一张丑恶的嘴脸时,却不知那正是自己面具中的一副;

第七次,它侧身于生活的污泥中,虽不甘心,却又畏首畏尾。

Dokcer安装及配置

  • 仓库、镜像、容器

Docker 要求 CentOS7 系统的内核版本在 3.10以上 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。

  • 通过 uname -r 命令查看你当前的内核版本
uname -r
  • 使用 root 权限登录 Centos。确保 yum 包更新到最新。
yum -y update  # 10分钟左右
  • 卸载旧版本(如果安装过旧版本的话)
yum remove docker docker-common docker-selinux docker-engine
  • 安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2
  • 设置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  • 可以查看所有仓库中所有docker版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r
  • 安装docker
sudo yum install -y docker-ce     #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版18.03.1/20.10
  • 启动并加入开机启动
systemctl start docker
systemctl enable docker
  • 验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
docker version
  • docker镜像加速
参考阿里云的镜像加速文档:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'

  "registry-mirrors": ["https://2qv4mkig.mirror.aliyuncs.com"]

EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
  • 查看是否加速配置成功
docker info

nginx安装及配置

  • 随便启动一个 nginx 实例,只是为了复制出配置

docker run -p 80:80 --name nginx -d nginx:1.23.1

  • 将容器内的配置文件拷贝到当前目录 mydata

docker container cp nginx:/etc/nginx .

// 别忘了后面的点

  • 修改文件名称:

mv nginx conf 把这个 conf 移动到/mydata/nginx 下

  • 终止原容器:

docker stop nginx

  • 执行命令删除原容器:

docker rm nginx

  • 创建新的 nginx;执行以下命令
docker run -p 80:80 --name nginx -v /mydata/nginx/html:/usr/share/nginx/html -v /mydata/nginx/logs:/var/log/nginx -v /mydata/nginx/conf:/etc/nginx -d nginx:1.23.1

给 nginx 的 html 下面放的所有资源可以直接访问;

个人经验仅供参考哦~

以上是关于Centos7下Docker部署Nginx的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7 服务器部署服务(nginx, Docker, MySQL, Joplin)

ansible 部署基于centos7+docker+nginx+openssl+v2版私有仓库

CentOS7.7下docker部署OpenWAF

Centos7下部署Nginx

docker 部署 nginx+php+mysql

最新Docker在Centos7下安装部署(参考官方教程文档)