Docker+Harbor搭建自己的私有仓库

环境准备

Docker安装

现在docker安装非常的方便,只要执行几个命令就可以了,具体的安装过程以及被集成到了脚本里了。有兴趣的可以自己看一看。

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
#or 国内源
curl -sSL https://get.daocloud.io/docker | sh
# 查看版本
docker -v #Docker version 20.10.14, build a224086
#启动docker
systemctl start docker // service docker start
#查看docker状态
systemctl status docker // service docker status

Docker-compose 安装

下载需要docker-compose版本
docker-compose 官方文档
docker-compose 下载地址
docker-compose 发版地址

# 下载
sudo curl -L https://github.com/docker/compose/releases/download/v2.3.4/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

#创建软连接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

#添加执行权限
sudo chmod +x /usr/local/bin/docker-compose

# 查看版本
docker-compose --version    # Docker Compose version v2.3.4

安装harbor

简介

harbor Registry(又称 Harbor 云原生制品仓库或 Harbor 镜像仓库)由 VMware 公司中国研发中心云原生实验室原创,并于 2016 年 3 月开源。Harbor 在 Docker Distribution的基础上增加了企业用户必需的权限控制、镜像签名、安全漏洞扫描和远程复制等重要功能,还提供了图形管理界面及面向国内用户的中文支持,开源后迅速在中国开发者和用户社区流行,成为中国云原生用户的主流容器镜像仓库。

选择它的理由

  • 有界面方便操作。
  • 支持用户管理、访问控制、活动监控、实例间复制等高级功能。
  • 支持多租户。
  • 安装方便,容易上手 ^ _ ^。
安装

harbor 官网地址
harbor 发版地址
image.png
从上面的发板地址选择一个我们需要的版本进行下载,因为我的网络还可以,在这里我就选择在线安装进行演示了,需要的小伙伴可以根据自己的网络状况选择在线或者离线安装的安装包。根据个人习惯,我喜欢将这类服务安装在/usr/local目录下。

# 切换目录
cd /usr/local
# 下载文件
wget https://github.com/goharbor/harbor/releases/download/v2.4.2/harbor-online-installer-v2.4.2.tgz
# 解压文件
tar zxvf harbor-online-installer-v2.4.2.tgz
# 进入解压后文件目录
cd harbor
# 查看文件目录
ls -l
# 目录内容
-rw-r--r-- 1 root root  3361 315 11:51 common.sh
-rw-r--r-- 1 root root  9668 315 11:51 harbor.yml.tmpl # 配置文件模版
-rwxr-xr-x 1 root root  2500 315 11:51 install.sh # 在线安装脚本
-rw-r--r-- 1 root root 11347 315 11:51 LICENSE
-rwxr-xr-x 1 root root  1881 315 11:51 prepare # 预安装准备脚本

# 这个时候我们先配置配置文件
# 复制一份配置文件
cp harbor.yml.tmpl harbor.yml
# 编辑配置文件 修改hostname和harbor_admin_password,我这里将hostname改为ip地址
vi harbor.yml

harbor.yml

# 上面我们已经完成了配置文件的配置 在这里我们执行预安装准备脚本进行校验
./prepare
# 等待执行完成,执行完成后,执行在线安装脚本
./install.sh
# 至此我们已经完成了harbor的安装。可以打开刚刚我们配置hostname进行访问了。

# 其他
# 我们可以通过 docker ps 查看一下harbor服务启动了那些容器
docker ps 
# 我们可以发现harbor 依赖了很多服务,那我们该怎么管理这些服务呢,总不可能一个一个起停。那样太麻烦了。
# 这个时候 我们 ls -l 看一下文件目录,会发现多出一个 docker-compose.yml文件
# 那我们j就可以通过dokcer-compose进行管理
# 如果是处在docker-compose.yml所在的文件目录,可以通过以下命令进行管理,如果不是 需要加上参数:[-f 文件路径]
docker-compose up -d # 后台启动
docker-compose stop # 停止服务
docker-compose restart # 重启服务

docker ps

使用

打开网页
harbor-login
新建一个项目
harbor-new-project

查看推送命令
harbor-推送命令

#拉去镜像
docker pull alpine
#打上我们自己的tag
docker tag alpine:latest 192.168.8.2:80/test/alpine:latest
#登录我们自己的仓库
docker login ip:prot
#上传我们的镜像
docker push 192.168.8.2:80/test/alpine:latest

我们会发现我们上传失败,因为docker默认是https的验证,而我们是没有配置对应的证书的,所以我们在docker中加入一项配置,让docker忽略我们的验证。

# 配置/etc/docker/daemon.json
vi /etc/docker/daemon.json
# 内容
{
  "registry-mirrors": ["https://0nth4654.mirror.aliyuncs.com","http://ef017c13.m.daocloud.io"],
  "insecure-registries": ["192.168.8.2:80"] # 加入的内容为我们配置的IP地址+端口
}
# 重启docker使配置文件生效
systemctl restart docker
# 重启harbor 服务
docker-compose up -d
# 重新上传
docker push 192.168.8.2:80/test/alpine:latest

去仓库验证镜像是否上传成功,上传成功。
harbor-上传成功

至此,我们已经完成了私有仓库的搭建了。谢谢大家的阅读。有什么问题大家可以在评论区补充。

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值