CentOS7离线安装Docker
- 有的服务器自带有docker,可以直接使用服务器自带的,如果没有,需要下载安装
- 版本要求:
- CentOS7 3.10以上版本,docker需要在CentOS7 3.10以上版本才能正常使用
- Docker docker-ce:19.03.9,版本为19.03.9或最新版本
- 注意版本一定要对应
1. docker安装包下载
docker安装包下载
下载地址:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
- containerd.io:
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
- Docker-ce
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-19.03.9-3.el7.x86_64.rpm
- Docker-ce-cli
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-cli-19.03.9-3.el7.x86_64.rpm
- container-selinux
https://pkgs.org/download/container-selinux
https://centos.pkgs.org/7/centos-extras-x86_64/container-selinux-2.107-3.el7.noarch.rpm.html
- 下载后的文件
- 下载安装包后,拷贝到linx环境
cd /opt
# 在虚拟机opt目录下创建docker目录
mkdir docker
# 使用ftp工具上传安装包到docker目录下
2. 安装docker
# 依次执行安装,顺序不能改变
rpm -ivh docker-ce-cli-19.03.9-3.el7.x86_64.rpm
rpm -ivh container-selinux-2.107-3.el7.noarch.rpm
rpm -ivh containerd.io-1.2.6-3.3.el7.x86_64.rpm
rpm -ivh docker-ce-19.03.9-3.el7.x86_64.rpm
3. 启动docker
# 启动
systemctl start docker
# 查看状态
systemctl status docker
# docker version 查看docker信息
docker version
# 设置 docker自动启动
systemctl enable docker.service
systemctl enable docker.socket
# 查看是否加入开机启动项
systemctl list-unit-files |grep xxx
#查看docker 在系统中状态
systemctl list-unit-files |grep docker
# 我们使用 reboot 来进行linux 重启后,看下docker 容器是否重启了
# docker ps 命令发现已经设置的自启动容器项目已经启动了
# 查看状态
systemctl status docker
- docker version 查看安装成功
- 如果版本查看失败,则配置daemon.json
- 添加加速镜像
cd /etc
mkdir docker
cd /etc/docker
vim daemon.json
# 将下面复制到daemon.json文件中
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
# 重启docker
systemctl restart docker.service
# 设置 docker自动启动
systemctl enable docker.service
systemctl enable docker.socket
- docker已经安装完成
4. 卸载docker
- Uninstall the old versions
Older versions of Docker were called docker or docker-engine. If these are installed, uninstall them, along with associated dependencies.
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
- Uninstall the Docker package:
sudo yum remove docker-ce
sudo yum remove containerd.io
sudo yum remove container-selinux
sudo yum remove docker-ce-cil
- Images, containers, volumes, or customized configuration files on your host are not automatically removed. To delete all images, containers, and volumes:
sudo rm -rf /var/lib/docker
5. 关闭防火墙
#启动防火墙
systemctl start firewalld.service
#查看防火墙状态
systemctl status firewalld.service
#停止防火墙
systemctl stop firewalld.service
# 开机禁用防火墙
systemctl disable firewalld.service
#设置firewall开机启动
systemctl enable firewalld.service
#查看防火墙状态=》使用root的身份=》结果为running
firewall-cmd --state
#永久性的开放3306端口
firewall-cmd --add-port=9091/tcp --permanent
#重载生效刚才的端口设置
firewall-cmd --reload
##查看已经开放的端口
firewall-cmd --list-ports
firewall-cmd --state ##查看防火墙状态,是否是running
firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones ##列出支持的zone
firewall-cmd --get-services ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口
firewall-cmd --remove-port=80/tcp --permanent ##永久移除80端口
firewall-cmd --list-ports ##查看已经开放的端口
iptables -L -n ##查看规则,这个命令是和iptables的相同的
man firewall-cmd ##查看帮助