搭建本地镜像仓库(Harbor)⽬录
搭建本地仓库
docker save -o centos7.9web.tar joe/web:v0.3 # 保存镜像
docker load -i centos7.9web.tar  # 将镜像导⼊位容器
# 这种当时效率太低了
仓库的种类
官⽅仓库
c.163 ⽹易仓库
阿⾥云仓库
hub.docker
私有仓库
habor
上传⾄官⽅库
docker tag joe/web:v0.3 jiecloud/web:v0.1  # 镜像改⼀个标签
docker login
#输⼊⽤户名密码
docker push jiecloud/web:v0.1 # 将镜像上传⾄官⽅库
# 如果不登录的话 , 是没有上传权限的
公司内部项⽬ , 不适合使⽤官⽅库 , 使⽤公司内⽹仓库更佳
habor的前世今⽣
docker 官⽅将镜像制作技术开源,但是公开的没有图形化, 管理起来效率极低
⽽且没有⾝份认证,
在CNCF的⼤⼒⽀持下, VMware 开源了⼀个Habor (使⽤python Django框架)
Habor搭建
⼀. 安装底层需求
Python应该是2.7或更⾼版本
Docker引擎应为1.10或更⾼版本(1.10 指docker企业版, 近似于ce-10版本 )
Docker Compose需要为1.6.0或更⾼版本
⼆. 下载Habor
解压软件包:tar
Docker要求:
HTTPS 协议 443端⼝
但是docker官⽅给我们私有镜像仓库是 HTTP协议 5000端⼝
docker login # 登录成功则会出现以下认证⽂件django登录注册功能
[root@localhost ~]# cat ~/.docker/config.json
{
"auths": {
"index.docker.io/v1/": {
"auth": "amllY2xvdWQ6P3EzayVfTnZGPzpaWjZW"
}
}
docker login aliyun # 向阿⾥云发起认证
tar -xf harbor-offline-installer-v1.
mv harbor /usr/local/ && cd /usr/local/harbor/
vi harbor.cfg
hostname = hub.jiecloud
ui_url_protocol = https
db_password = root123 # db 的root密码
max_job_workers = 3 # 下载的并发数
ssl_cert = /data/ #crt存放⽬录
ssl_cert_key = /data/cert/server.key #server.key⽂件存放⽬录
mkdir -p /data/cert
cd /data/cert/
openssl genrsa -des3 -out server.key 2048
openssl req -new -key server.key -out server.csr
cp server.key # 备份⼀个
openssl rsa -in -out server.key # 退密码
openssl x509 -req -days 365 -in server.csr -signkey server.key -
#安装docker compose
mv docker-compose /usr/local/bin
chmod +x /usr/local/bin/docker-compose
#安装Habor
cd /usr/local/harbor && ./install.sh
#修改hosts 解析
# 浏览器访问成功
默认⽤户/密码为admin / Harbor12345
docker仓库客户端
vim /etc/docker/daemon.json
{
"insecure-registries": ["hub.jiecloud"]
}
# 信任此url
docker login hub.jiecloud # 可以登录成功
docker tag jiecloud/web:v0.1 hub.jiecloud/library/web:v0.1
docker push hub.jiecloud/library/web:v0.1 # 上传镜像
docker pull hub.jiecloud/library/web:v0.1 # 下载镜像
# 查看Harbor -项⽬已经收到
docker logout hub.jiecloud # 需要加上⾮官⽅仓库, 如果不加则是退出官⽅仓库
# 私有镜像只能对应管理员⾃⼰能下载
Harbor server 端后期维护
docker-compose -f /usr/local/l start/stop  # 启动/关闭Harbor crontab -e
*/5 * * * * docker-compose -f /usr/local/l start
systemctl restart crond

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。