1.安装环境,查看CentOS的版本,在CentOS7安装docker要求系统为64位,且系统内核版本为3.10以上
分别使用指令查看CentOS的版本及系统位数还有内核版本
cat /etc/redhat-release
uname -r
安装docker
一、使用yum安装
1.查看是否已经使用yum安装过docker
若有,卸载旧版本(...省略号为显示的文件名)
yum -y remove …
卸载后保留/var/lib/docker的内容(镜像、容器、存储卷和网络等)
故需指令删除干净
rm -rf /var/lib/docker
2.前提步骤执行后,开始正式安装
yum -y install docker
执行后再次查看docker安装列表
3.启动docker
systemctl start docker
4.查看docker服务状态
systemctl status docker
查看docker的版本,
docker version
tips:可以设置开机启动docker(个人暂未设置,后续需要再设置)
systemctl enable docker.service
二、离线安装卸载docker方式
1.准备离线安装包
安装包官方地址:https://download.docker.com/linux/static/stable/x86_64/
可以下载到本地,通过ftp等工具上传到服务器上,或者在服务器上使用wget命令下载,若没有安装wget可以使用yum安装,将安装压缩文件保存至自定义的目录下(个人便于记忆整理放在gangye/softwarePackage/dockerPackageFile)
wget https://download.docker.com/linux/static/stable/x86_64/docker-18.06.3-ce.tgz
2.准备安装卸载脚本文件以及docker.service文件
2.1准备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 --selinux-enabled=false --insecure-registry=127.0.0.1
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
2.2准备安装脚本文件installDocker.sh
#!/bin/sh
echo '解压tar包...'
tar -xvf $1
echo '将docker目录移到/usr/bin目录下...'
cp docker/* /usr/bin/
echo '将docker.service 移到/etc/systemd/system/ 目录...'
cp docker.service /etc/systemd/system/
echo '添加文件权限...'
chmod +x /etc/systemd/system/docker.service
echo '重新加载配置文件...'
systemctl daemon-reload
echo '启动docker...'
systemctl start docker
echo '设置开机自启...'
systemctl enable docker.service
echo 'docker安装成功...'
docker -v
2.3准备卸载脚本文件uninstallDocker.sh
#!/bin/sh
echo '删除docker.service...'
rm -f /etc/systemd/system/docker.service
echo '删除docker文件...'
rm -rf /usr/bin/docker*
echo '重新加载配置文件'
systemctl daemon-reload
echo '卸载成功...'
准备文件工作完毕,此时文件路径下有这些文件
编写完后赋予脚本执行权限,然后执行脚本即可
安装:
卸载:
注:
1.此处的--insecure-registry=127.0.0.1(此处改成你私服ip)设置是针对有搭建了自己私服Harbor时允许docker进行不安全的访问,否则访问将会被拒绝。
2.安装脚本中的重新加载配置文件(每次有修改docker.service文件时都要重新加载下)指令
systemctl daemon-reload
3.由于国内外网络问题,可以配置镜像加速地址
跳转到/etc/docker路径下,编写daemon.json文件,使用阿里云的镜像(此处个人使用申请个阿里云账号,不同账户的阿里云加速路径地址不一致)
{
"registry-mirrors": ["https://lnfy1vx5.mirror.aliyuncs.com"]
}
tips:离线模式docker的安装卸载参考这篇文章
https://www.jb51.net/article/167103.htm
注:在实际使用Docker的过程中,会发现,当容器之间存在依赖关系的时候,会出现启动先后顺序的问题,还有多个容器同时启动,需要打多条命了,显得非常繁琐。使用DockerCompose,可以做到一键启动多个容器。DockerCompose是一个用来定义和运行的复杂应用的Docker工具,使用Compose,可以在一个文件中,定义多容器应用,然后使用一条命令来启动应用,完成一切准备工作
docker-compose安装步骤(本机未安装)
curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose