centos7上docker的几种安装方法

docker安装

CentOS 7 中 Docker 的安装:

Docker 软件包已经包括在默认的 CentOS-Extras 软件源(联网使用centos7u2自带网络Yum源)里。因此想要安装 docker,只需要运行下面的 yum 命令:

# yum install -y epel*
# yum install docker
启动 Docker 服务:
# service docker start
# chkconfig docker on
CentOS 7    
# systemctl start docker.service
# systemctl enable docker.service 

确定docker服务在运行:

结果会显示服务端和客户端的版本,如果只显示客户端版本说明服务没有启动

# docker version

Client:
Version:         1.10.3
API version:     1.22
...

docker版本与官方安装方式

moby、docker-ce与docker-ee

最早时docker是一个开源项目,主要由docker公司维护。

2017年3月1日起,docker公司将原先的docker项目改名为moby,并创建了docker-ce和docker-ee。

三者关系:

moby是继承了原先的docker的项目,是社区维护的的开源项目,谁都可以在moby的基础打造自己的容器产品

docker-ce是docker公司维护的开源项目,是一个基于moby项目的免费的容器产品

docker-ee是docker公司维护的闭源产品,是docker公司的商业产品

​ moby project由社区维护,docker-ce project是docker公司维护,docker-ee是闭源的docker公司维护。

CentOS–官方安装

如果是centos,上面的安装命令会在系统上添加yum源:/etc/yum.repos.d/docker-ce.repo 
# wget https://download.docker.com/linux/centos/docker-ce.repo
# mv docker-ce.repo /etc/yum.repos.d
# yum install -y docker-ce

​ 或者直接下载rpm安装:

# wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-17.09.0.ce-1.el7.centos.x86_64.rpm

# yum localinstall docker-ce-17.09.0.ce-1.el7.centos.x86_64.rpm

国内源安装新版docker

使用aliyun docker yum源安装新版docker

删除已安装的Docker

[root@yixuan ~]# yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine

配置阿里云Docker Yum源

# yum install -y yum-utils device-mapper-persistent-data lvm2 git
# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装指定版本

 查看Docker版本:
# yum list docker-ce --showduplicates

​ 安装较旧版本(比如Docker 17.03.2) :

​ 需要指定完整的rpm包的包名,并且加上–setopt=obsoletes=0 参数:

# yum install -y --setopt=obsoletes=0 \
docker-ce-17.03.2.ce-1.el7.centos.x86_64 \
docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch

例如:
# yum install -y --setopt=obsoletes=0 docker-ce-19.03.2 docker-ce-selinux-19.03.2

安装Docker新版本(比如Docker 18.03.0):加上rpm包名的版本号部分或不加都可以:

# yum install docker-ce-18.03.0.ce  -y
或者
[root@yixuan ~]# yum install -y docker-ce

启动Docker服务:

#systemctl enable docker
#systemctl start docker

查看docker版本状态:

[root@yixuan ~]# docker -v
Docker version 19.03.2, build 6a30dfc
[root@yixuan ~]# docker version
Client: Docker Engine - Community
Version:           19.03.2
API version:       1.40
Go version:        go1.12.8
Git commit:        6a30dfc
Built:             Thu Aug 29 05:28:55 2019
OS/Arch:           linux/amd64
Experimental:      false

Server: Docker Engine - Community
Engine:
 Version:          19.03.2
 API version:      1.40 (minimum version 1.12)
 Go version:       go1.12.8
 Git commit:       6a30dfc
 Built:            Thu Aug 29 05:27:34 2019
 OS/Arch:          linux/amd64
 Experimental:     false
containerd:
 Version:          1.2.6
 GitCommit:        894b81a4b802e4eb2a91d1ce216b8817763c29fb
runc:
 Version:          1.0.0-rc8
 GitCommit:        425e105d5a03fabd737a126ad93d62a9eeede87f
docker-init:
 Version:          0.18.0
 GitCommit:        fec3683      

查看docker运行状态:

# docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
...

=======================================================

报错1:

docker info的时候报如下错误

bridge-nf-call-iptables is disabled

 

解决1:

追加如下配置,然后重启系统

# vim /etc/sysctl.conf   

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

net.bridge.bridge-nf-call-arptables = 1

 

问题2:

虚拟机ping百度也能ping通,但是需要等好几秒才出结果,关键是下载镜像一直报错如下

 # docker pull daocloud.io/library/nginx

 Using default tag: latest

 Error response from daemon: Get https://daocloud.io/v2/: dial tcp: lookup daocloud.io on 192.168.1.2:53: read udp   192.168.1.189:41335->192.168.1.2:53: i/o timeout

 

解决2:

我的虚拟机用的网关和dns都是虚拟机自己的.1或者.2,把DNS改成8.8.8.8问题就解决了,ping百度也秒出结果

 # vim /etc/resolv.conf

 nameserver 8.8.8.8

简单测试

运行一个容器
[root@192 ~]# docker run -it daocloud.io/library/ubuntu /bin/bash #运行容器
Unable to find image 'daocloud.io/library/ubuntu:latest' locally
latest: Pulling from library/ubuntu
5c939e3a4d10: Pull complete 
c63719cdbe7a: Pull complete 
19a861ea6baf: Pull complete 
651c9d2d6c4f: Pull complete 
Digest: sha256:bc025862c3e8ec4a8754ea4756e33da6c41cba38330d7e324abd25c8e0b93300
Status: Downloaded newer image for daocloud.io/library/ubuntu:latest

如果自动进入下面的容器环境,说明ubuntu镜像运行成功,Docker的安装也没有问题:可以操作容器了
root@db8e84e2ea96:/# 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_c G

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值