Docker部署配置
1 安装步骤
- 配置docker仓库
# 安装 yum-utils 包(提供yum-config-manager 实用程序)
$ yum install -y yum-utils
# 使用阿里的 docker 镜像仓库
$ yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 更新yum软件包索引
$ yum makecache fast
- 安装DOCKER CE 引擎
yum -y install docker-ce docker-ce-cli containerd.io
- 使用阿里云镜像加速
- 注册账号:https://www.aliyun.com/
- 获得加速器地址连接:
- 登陆阿里云开发者平台
- 点击控制台
- 选择容器镜像服务
- 获取加速器地址:https://3jdregmb.mirror.aliyuncs.com
$ sudo mkdir -p /etc/docker
$ sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://3jdregmb.mirror.aliyuncs.com"]
}
EOF
$ systemctl daemon-reload
$ systemctl restart docker
- 启动docker
2 卸载
# 卸载命令
systemctl stop docker
yum remove docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker
rm -rf /var/lib/containerd
3 私有仓库docker-registry安装部署
- 拉取
registry
镜像:docker pull registry
- 启动
registry
容器:docker run -d -p 5000:5000 --restart=always --name registry registry
registry
容器需要访问5000端口,宿主机任意端口绑定容器内5000端口
--restart=alway
指定容器在exit后,能够重新启动
- 仓库默认会在/var/lib/registry下,通过
-v /local-dir:/var/lib/registry
来修改位置
- 现在默认仓库地址是
127.0.0.1:5000
3.1 修改使用内网仓库地址
- 修改配置文件
vi /etc/docker/daemon.json
- 增加:
"insecure-registries": ["内网ip:5000"]
- 重启docker服务:
systemctl restart docker
- 现在同一网段内的其它机器都能通过
内网ip:port/镜像名:tag
来访问镜像
3.2 修改默认仓库地址
- 修改配置文件
vi /etc/docker/daemon.json
- 增加:
ADD_REGISTRY='--add-registry 内网ip:5000'
4 推送镜像到仓库
- 给镜像打标签:
docker tag 镜像id registry地址:端口/镜像名:标签
- 推送到仓库:
docker push registry地址:端口/镜像名:标签
`
- 其它docker节点上拉取镜像:
docker pull registry地址:端口/镜像名:标签
- 示例
$ docker tag 846e0e5335bb 10.30.12.17:5000/fio:3.7
$ docker push 10.30.12.17:5000/fio:3.7
The push refers to repository [10.30.12.17:5000/fio]
688ef2cc21ed: Pushed
fb82b029bea0: Mounted from apache/zookeeper
3.7: digest: sha256:9cef282efdf8c18e5057821dd085d84de2f9da4a24c008373794749e4fe76364 size: 741
# 在另一台docker节点上执行拉取镜像
$ docker pull heredata/fio:3.7
4.1 查看私有仓库镜像列表
- 语法:
curl -XGET http://registry:5000/v2/_catalog
curl -XGET http://registry:5000/v2/image_name/tags/list
- 示例:
[root@centos7 ~]# curl -XGET http://192.168.211.10:5000/v2/_catalog
{"repositories":["registry"]}
[root@centos7 ~]# curl -XGET http://192.168.211.10:5000/v2/registry/tags/list
{"name":"registry","tags":["test"]}
4.2 查看私有镜像标签
- 语法:
curl registrIp:port/v2/镜像名/tags/list
- 示例
$ curl 127.0.0.1:5000/v2/apache/zookeeper/tags/list
{"name":"apache/zookeeper","tags":["v3.4.5","v3.4.14"]}
5 删除私有库镜像