暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

在Centos 7安装Docker环境,配置镜像加速仓库

NFT艺术之家 2019-09-23
405

        CentOS  Linux发行版之一,它是来自于 Red Hat企业版 (RHEL)依照企业版开放原始码规定释出的原始码所编译而成。由于出自同样的原始码,因此有些要求高度稳定性的伺服器以CentOS替代商业版的 Red Hat Enterprise Linux使用。

         两者的不同,在于CentOS并不包含封闭原始码软体。CentOS对上游代码的主要修改是为了移除不能自由使用的商标。 2014年,CentOS宣布与Red Hat合作 ,但CentOS将会在新的委员会下继续运作,并不受RHEL的影响 

CentOS和RHEL一样,都可以使用Fedora EPEL来补足软件。


Centos安装


先决条件

  • Centos服务器一台(可以用虚拟机代替)

  • 终端连接工具windows: xshell、putty、crt等, mac:终端



开始实践



由于Centos默认的Docker版本非常的老,但是Docker的迭代还是很快的。如果想要下载官方的Docker源也是可以的,但是限制于某些原因,官方的镜像虽然能保持最新版本,但是下载速度真的不敢恭维,用户体验是非常不好。


step 1:配置安装源


配置Docker官方源:


sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo




这里我们选择阿里云的Docker源,同步还是很及时的,国内非常值得推荐,生产上面我使用了很久没什么问题


sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo



 setp 2:安装Docker


# 安装一些系统必要的依赖
sudo yum makecache
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# 安装docker-ce
sudo yum makecache fast
sudo yum install docker-ce -y

# 启动docker并设置开机自启动
sudo systemctl start docker
sudo systemctl enable docker



如果想安装指定版本的docker-ce,可以如下操作


sudo yum provides docker-ce --showduplicates
sudo yum install docker-ce-18.03.0.ce-1.el7.centos.x86_64 -y


setp 3:Docker基础配置

默认情况下在我们拉取镜像的时候默认是从dockerHub拉取镜像,拉取的速度是非常慢的。

国内有提供一些免费的加速镜像仓库但是最靠谱的个人感觉还是阿里云的,可能是生产上面用的比较多吧。


这里我主要介绍怎么获取阿里云免费的镜像加速地址:


  • 注册一个阿里云账号

  • 登录阿里云账户

  • 查看如下图:

  • 输入镜像仓库的密码:


  • 查看镜像加速地址:


  • 配置Docker的配置文件


cat /etc/docker/daemon.json
{
"registry-mirrors": ["xxxxxxxxx"],
"max-concurrent-downloads": 10,
"log-driver": "json-file",
"log-level": "warn",
"log-opts": {
"max-size": "10m",
"max-file": "3"
},
"data-root": "/var/lib/docker"
}


这里简单的说明一下每一行配置文件的作用:

registry-mirrors:镜像加速仓库地址

max-concurrent-downloads: 当前最大的下载最多的就是docker pull的时候

log-driver:设置docker容器的标准输出内容保存为json-file

log-level:日志等级

log-opts:日志配置

log-opts.max-size:单个日志文件的最大为10m

log-opts.max-file:标准输出的文件最多有3个,这里的意思是如果文件超过10m,docker会自动将文件重命名,然后开始写新文件,最多有三个,超过三个的时候就会删除最早的那个

data-root:docker的数据目录


  • 根据步骤配置完成后重启


# sudo systemctl daemon-reload
# sudo systemctl restart docker


  • 拉取镜像


# time docker pull mysql:5.6
5.6: Pulling from library/mysql
f2aa67a397c4: Already exists
1accf44cb7e0: Already exists
2d830ea9fa68: Already exists
740584693b89: Already exists
4d620357ec48: Already exists
f5cd6ee094d7: Pull complete
09f4550fd7ee: Pull complete
f6cac39ec886: Pull complete
a18dadcb91ad: Pull complete
2e34432011c2: Pull complete
820c37db8e67: Pull complete
Digest: sha256:7e3575b7949a4f8712a47b0fc875022dcea5d84f4672b1532587b6933502f757
Status: Downloaded newer image for mysql:5.6

real 0m32.154s
user 0m0.337s
sys 0m0.274s



到这里就大功告成了。


请关注我们,

微信订阅号:ITBuf 企鹅号

企鹅号:TSG技术分享

文章转载自NFT艺术之家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论