Docker Docker 环境部署

Yan · 2021年09月03日 · 2165 次阅读

安装准备:
1、 查看 Linux 版本与内核版本
cat /etc/redhat-release 与 uname -r
※低于 centos7 与 3.10 的版本只能装以前低版本(1 点几,如 1.7.1)
※等于大于 centos7 与 3.10 版本的可以安装 17.03 及之上的版本
一、 在线安装
注:①、centos-extras 库必须启用(默认是启用);②、有些服务器本身缺少一些软件,可能之前需要安装一些依赖:如 device-mapper(存储驱动),而 device mapper 又需要使用 device-mapper-persistent-data 和 lvm2,所以可能需要安装这些
1、 设置存储库(软件源),从存储库安装
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2、 未指定版本安装(默认最高版本)
sudo yum install docker-ce docker-ce-cli containerd.io

指定版本安装
sudo yum install docker-ce- docker-ce-cli- containerd.io
注:可使用 yum list docker-ce --showduplicates | sort –r 查看版本

包名称 + 版本:即 docker-ce+ 从第一个冒号(:)开始的版本字符串(第二列),到连字符(-)结束。例如:docker-ce-18.09.1
3、 安装过程异常处理:
①、安装过程中可能会遇到:接受 GPG 密钥的提示信息,选择是
②、安装过程中可能会遇到:Requires: fuse-overlayfs >= 0.7 类似问题

解:编辑/etc/yum.repos.d/docker-ce.repo,文件顶部添加一个条目(添加后再次安装):
[centos-extras]
name=Centos extras - $basearch
baseurl=http://mirror.centos.org/centos/7/extras/x86_64
enabled=1
gpgcheck=0
4、 启动 docker 服务
systemctl start docker
5、 查案 docker 状态与信息
systemctl status docker 与 docker info
二、 离线安装-rpm 方式安装
1、 下载 rpm 文件
前往https://download.docker.com/linux/centos/CentOS 版本,然后进入 x86_64/stable/Packages/中下载各个.rpm 要安装的 Docker 版本的文件。选择

注:①主要文件有:containerd.io、docker-ce、docker-ce-cli、docker-ce-rootless-extras、docker-ce-selinux、docker-scan-plugin
②安装过程中也可能会出现提示缺少各种依赖,需要依次下载安装,最好方法是找一台能 yum 源的机器执行下载命令,事先将软件与所需依赖一起下载下来:
yum install --downloadonly --downloaddir=/下载路径/目录 docker
2、 执行 rpm 文件
将所有 rmp 文件上传至服务器某个文件夹中,进入文件夹中执行命令:
rpm -Uvh --fprce --nodeps .rpm
3、 启动服务
sudo systemctl start docker
4、

三、 离线安装 - 二进制方式安装
1、 下载压缩包
进入https://download.docker.com/linux/static/stable/.tgz,选择硬件平台,然后下载
2、 上传解压

3、 所有文件复制到/user/bin 目录中
sudo cp docker/
/usr/bin/
4、 启动 Docker 守护进程
sudo dockerd &
5、 创建 docker.service 文件注册为 service 服务
sudo vi /usr/lib/systemd/system/docker.service
输入:

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target

6、 创建 docker.socket 文件
vi /usr/lib/systemd/system/ docker.socket
输入:

[Unit]
Description=Docker Socket for the API
[Socket]
ListenStream=/var/run/docker.sock
SocketMode=0660
SocketUser=root
SocketGroup=docker
[Install]
WantedBy=sockets.target

7、 创建 docker 组,将 root 加入组
sudo groupadd docker
sudo gpasswd -a root docker
8、 测试是否成功
systemctl enable docker.service //设置为开机启动
systemctl daemon-reload //重新加载服务配置文件
systemctl start docker.service 启动
systemctl stop docker.service 停止
systemctl restart docker.service 重启
或者
sudo service docker restart 重启
sudo service docker stop 停止
sudo service docker start 启动
9、

四、 配置镜像仓库地址
1、 创建 daemon.json 文件(docker1.13 的版本以上有效)
vim /etc/docker/daemon.json
输入:
{
"registry-mirrors": [ "https://registry.docker-cn.com"]
}
2、 重启服务
systemctl daemon-reload //重新加载 daemon 文件
systemctl restart docker //重启 docker
3、

五、

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册