Docker环境准备与搭建Harbor仓库

本文详细介绍如何在Docker环境下安装配置Harbor私有仓库,包括Docker的安装配置、Harbor的下载安装及配置过程,并通过实例演示如何使用Harbor进行镜像的拉取与推送。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker环境准备与搭建Harbor仓库

安装Docker

下载并安装

wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce

创建配置文件目录

mkdir /etc/docker/
cd /etc/docker/

创建配置文件

vim /etc/docker/daemon.json

配置文件如下,

不安全的registry中增加了harbor地址

各个机器上bip网段不一致,bip中间两段与宿主机最后两段相同,目的是方便定位问题

{
  "graph": "/data/docker",
  "storage-driver": "overlay2",
  "insecure-registries": ["registry.access.redhat.com","quay.io","harbor.XXXX.com"],
  "registry-mirrors": ["https://qdloedv0.mirror.aliyuncs.com"],
  "bip": "172.1.21.1/24",
  "exec-opts": ["native.cgroupdriver=systemd"],
  "live-restore": true
}

启动docker

systemctl start docker
systemctl enable docker

安装Harbor

下载地址:https://github.com/goharbor/harbor/releases

官方地址:https://goharbor.io/

参考地址:https://www.yuque.com/duduniao/trp3ic/ohrxds#9Zpxx

这里下载的最新版v2.3.1

目录说明

/opt/src : 源码、文件下载目录

/opt/release : 各个版本软件存放位置

/opt/apps : 各个软件当前版本的软链接

下载源码

cd /opt/src
wget https://github.com/goharbor/harbor/releases/download/v2.3.1/harbor-offline-installer-v2.3.1.tgz
mv harbor harbor-v2.3.1
ln -s /opt/release/harbor-v2.3.1 /opt/apps/harbor

配置harbor

vim /opt/apps/harbor/harbor.yml
#实验环境仅需要修改如下配置项,生产环境记得修改密码,并配置ssl证书。
#注释掉https相关的部分
hostname: harbor.XXXX.com
data_volume: /data/harbor
location: /data/harbor/logs
#http port改为7000(不是80即可)
#退出后,创建对应目录
 mkdir -p /data/harbor/logs

安装nginx,反向代理harbor

# 当前机器中Nginx功能较少,使用yum安装即可。如有多个harbor考虑源码编译且配置健康检查
# nginx配置此处忽略,仅仅使用最简单的配置。
vim /etc/nginx/conf.d/harbor.conf
server {
    listen       80;
    server_name  harbor.od.com;
    # 避免出现上传失败的情况
    client_max_body_size 1000m;

    location / {
        proxy_pass http://127.0.0.1:180;
    }
}
systemctl start nginx ; systemctl enable nginx

安装docker-compose

docker-compose有很多种安装方式,可以直接yum安装,该方式需要提前准备epel源,且对网络有一定的要求。

yum -y install docker-compose

也可以去直接下载对应的版本,下载地址:

https://github.com/docker/compose/releases

比如下载的1.23.2版本,下载后是一个名为docker-compose-Linux-x86_64 的文件,把文件放到/usr/local/bin文件夹下并改名:docker-compose,再添加执行权限:

chmod +x /usr/local/bin/docker-compose

docker命令补全:

yum -y install bash-completion

启动harbor

cd /opt/apps/harbor
./install.sh

等待一段时间后,查看容器

[root@hbgg1-200 harbor]# docker-compose ps
      Name                     Command               State                  Ports
-------------------------------------------------------------------------------------------------
harbor-core         /harbor/entrypoint.sh            Up
harbor-db           /docker-entrypoint.sh 96 13      Up
harbor-jobservice   /harbor/entrypoint.sh            Up
harbor-log          /bin/sh -c /usr/local/bin/ ...   Up      127.0.0.1:1514->10514/tcp
harbor-portal       nginx -g daemon off;             Up
nginx               nginx -g daemon off;             Up      0.0.0.0:80->8080/tcp,:::80->8080/tcp
redis               redis-server /etc/redis.conf     Up
registry            /home/harbor/entrypoint.sh       Up
registryctl         /home/harbor/start.sh            Up

配置DNS解析

vim /var/named/od.com.zone
#需要滚动一位序列号
$ORIGIN od.com.
$TTL 600        ; 10 minutes
@       IN SOA  dns.od.com. dnsadmin.od.com. (
                                2021081904      ; serial
                                1D      ; refresh
                                1H      ; retry
                                1W      ; expire
                                3H )    ; minimum
        NS      dns.od.com.
harbor  A       10.10.1.200
dns     A       10.10.1.11

浏览器访问harbor.XXXX.com,输入账号密码admin:Harbor12345

新建个项目public,公开。

尝试在下载并推送一个nginx

#拉取nginx镜像
docker pull nginx:1.21.1
#打上本地仓库的tag
docker tag nginx:1.21.1 harbor.XXXX.com/public/nginx:1.21.1
#登陆,输入用户名admin,密码Harbor12345 
docker login harbor.XXXX.com
#或者直接带着用户名和密码的方式输入
docker login --username=harbor --password=Harbor12345 harbor.XXXX.com
#推送
docker push harbor.XXXX.com/public/nginx:1.21.1

此时查看harbor仓库,发现已经把nginx镜像推送上来了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值