介绍如何在自己的服务器搭建docker镜像仓库
一、查看宿主机docker版本
如果版本小于17,需要下载新的版本docker,如果你的docker版本大于17的话,以下跳过,请直接跳到第二块
docker -v
1、更新yum源
yum update
2、卸载旧版本的docker,如果有安装的话
sudo yum remove docker docker-common docker-selinux docker-engine
3、安装需要的软件包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
4、设置yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
5、查看仓库中的所有docker版本,并选择其中的下载
yum list docker-ce --showduplicates | sort -r
6、安装docker
sudo yum install docker-ce-<版本号>
7、启动并加入开机自启
sudo systemctl start docker
sudo systemctl enable docker
8、安装最新的docker-compose
# 下载
wget https://github.com/docker/compose/releases/download/1.24.1/docker-compose-Linux-x86_64
# 移动到/user/local/bin
mv docker-compose-Linux-x86_64 /user/local/bin
# 改名
mv docker-compose-Linux-x86_64 docker-compose
9、将可执行权限用于二进制文件
sudo chmod +x /usr/local/bin/docker-compose
二、仓库搭建
1、下载Harbor
github地址:https://github.com/vmware/harbor/releases/
,可以自行去选择版本下载
# 下载
wget https://storage.googleapis.com/harbor-releases/release-1.9.0/harbor-online-installer-v1.9.0.tgz
# 解压缩
tar xvf harbor-online-installer-v1.9.0.tgz
2、配置Harbor
进入Harbor文件夹,找到harbor.yml
文件,并配置
vim /harbor/harbor.yml
一般配置这两项即可,其他的自行决定配置,hostname
为您harbor所在服务器的IP或者服务器的域名,port
为暴露的端口(我这里配置5000
),一定不能是localhost或者是127.0.0.1
,修改完毕后保存退出
3、启动
在harbor文件夹执行以下命令启动harbor
./install.sh
启动完毕后浏览器访问http://你设置的IP或者域名:你设置的端口
,账号默认为:admin,密码:Harbor12345,登录后就进入了主页
4、新建项目
这里我们建了一个叫guojing的项目
5、push镜像
修改下配置
由于docker的版本从13开始,register只能用https,由于我们配的都是http的,所以要先在/etc/docker/
目录创建daemon.json
文件并加入如下
{ "insecure-registries":["xxx:5000"] }
重启docker
systemctl restart docker
重启harbor相关的容器,因为重启docker后这些都关闭了,所以我们通过docker ps -a
找到所有与harbor相关的镜像,通过docker restart xx xx xx
对应容器名重启即可
正式提交镜像
例如提交本地的maven镜像,xxx为你配置harbor时配置的hostname
# 先登录
docker login xxx:5000
# 打标签
docker tag maven xxx:5000/guojing/maven:latest
# 提交
docker push xxx:5000/guojing/maven:latest
本文就介绍到这里了,有任何疑问可以在评论区说明