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)