安装docker以及解决container-selinux错误
docker在线安装+container-selinux问题解决
一、在线安装docker
首先要保证虚拟机能访问外网,具体操作可参考我上一篇博客,解决虚拟机NAT访问互联网问题
在此也是演示FinalShell远程连接CentOS7安装docker的操作以及解决遇到的额问题,离线安装docker后续会再补充
安装过程参照docker官方文档(英文)和菜鸟教程,文档链接附在下方参考文档里
注意:以下命令带不带sudo都行
1、卸载旧版本docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2、设置docker仓库
在新主机上首次安装 Docker Engine-Community 之前,需要设置 Docker 仓库,之后就可以从仓库安装和更新 Docker
安装所需的软件包。yum-utils 提供了 yum-config-manager 。这俩都要安装
先装yum-util
sudo yum install -y yum-utils
再装yum-config-manager,这里用官方源、阿里云、清华源都行,官方源会较慢,建议后俩
官方源如下:
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
阿里云如下:
sudo yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
清华源:
sudo yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
我选用的阿里云源,直接复制命令到FinalShell执行,如下
3、安装Docker Engine-Community
安装最新版本docker,执行如下命令
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
若想安装其他老版本,操作如下:
先执行以下命令查看老版本号,会按版本号(从高到低)对结果进行排序。
yum list docker-ce --showduplicates | sort -r
比如中间第一个 3:25.0.3-1.el7 对应的版本号就是25.0.3
安装旧版本执行如下命令,将<VERSION_STRING>替换成对应的版本号,比如替换成25.0.3
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
安装成功后,显示完毕
4、启动docker
sudo systemctl start docker
参考文档:
docker官方文档:
Install Docker Engine on CentOS | Docker Docs
二、离线安装docker
-
下载 Docker 二进制文件(离线安装包)
下载地址:Index of linux/static/stable/x86_64/
注:本文使用 /x86_64/docker-18.06.1-ce.tgz,注意对应操作系统类型。
-
安装包上传到服务器上 通过FTP工具、文件共享、U盘等形式将安装包docker-18.06.1-ce.tgz 上传到服务器上,没有保密需求可以直接插拔存储介质U盘等拷贝,不能直接插服务器的话可以采用FTP工具形式上传,各种方式后面会详细介绍
-
解压安装包
tar zxf docker-18.06.1-ce.tgz
-
将docker 相关命令拷贝到 /usr/bin,方便直接运行命令
sudo cp docker/* /usr/bin/
-
启动Docker守护程序
sudo dockerd &
-
验证是否安装成功,执行docker info命令,若正常打印版本信息则安装成功。
docker info
-
将docker注册成系统服务
执行这步前确保docker没有运行,如已运行,需要杀掉;或者执行这步后重启虚拟机
可以通过查看是否有docker进程,
ps -ef | grep docker
通过kill来杀掉进程
kill 进程ID
在 /usr/lib/systemd/system/ 目录下创建docker.service 文件
sudo vi /usr/lib/systemd/system/docker.service
docker.service 文件内容如下
-
启动/停止docker
systemctl start/stop docker
-
开机自启/取消开机自启docker服务
systemctl enable/disable docker
-
查看docker状态
systemctl status docker
二、解决错误
1、错误:container-selinux >= 2:2.74
根据这个报错可以看出是container-selinux版本低或是没安装的原因,所以我们只需要安装一下contain-SElinux包就可以了,执行如下命令即可解决,没有安装wget下载工具的,可以先执行yum -y install wget安装一个,然后再执行下面命令安装contain-SElinux包
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
执行结果如下:
然后再执行docker安装命令,以下是最新版docker安装命令:
yum -y install docker-ce
安装成功结果如下:
运行docker,并执行hello-world测试在docker中运行情况
执行成功,docker正常运行,问题解决
参考文档
更多推荐
所有评论(0)