" name="sm-site-verification"/>
侧边栏壁纸
博主头像
PySuper 博主等级

千里之行,始于足下

  • 累计撰写 206 篇文章
  • 累计创建 14 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

DevOps | Docker | Harbor 安装与配置 | 踩坑

PySuper
2021-08-09 / 0 评论 / 1 点赞 / 17 阅读 / 0 字
温馨提示:
本文最后更新于2024-06-12,若内容或图片失效,请留言反馈。 所有牛逼的人都有一段苦逼的岁月。 但是你只要像SB一样去坚持,终将牛逼!!! ✊✊✊

Harbor 安装与使用

特性

  • 基于角色的访问控制 :用户通过 “项目” 进行组织管理,可以对多个仓库在同一命名空间里有不同的权限。
  • 镜像复制:镜像可以在多个 Registry 实例中复制(同步)。尤其适合于负载均衡,高可用,混合云和多云的场景。
  • 图形化用户界面:用户可以通过浏览器来浏览,检索当前 Docker 镜像仓库,管理项目和命名空间。
  • AD/LDAP 支持:Harbor 可以集成企业内部已有的 AD/LDAP,用于鉴权认证管理。
  • 审计管理:所有针对镜像仓库的操作都可以被记录追溯,用于审计管理。
  • 国际化:已拥有英文、中文、德文、日文和俄文的本地化版本。更多的语言将会添加进来。
  • RESTful API:RESTful API 提供给管理员对于 Harbor 更多的操控,使得与其它管理软件集成变得更容易。
  • 部署简单:提供在线和离线两种安装工具, 也可以安装到 vSphere 平台 (OVA 方式) 虚拟设备。

安装

1、安装依赖

yum install -y yum-utils
# yum install -y yum-utils device-mapper-persistent-data lvm2 wget

2、添加阿里云安装源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、安装Docker

yum install -y docker-ce

4、启动docker

systemctl restart docker.service

5、获取docker-compose

curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

6、添加执行权限

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

7、查看版本

docker version

docker-compose version

8、下载、解压 harbor

Docker-harbor

tar zxf harbor-offline-installer-v2.3.0.tgz -C /usr/local/

9、配置文件

# 进入harbor目录
cd /usr/local/harbor/

# 拷贝模板配置文件
cp harbor.yml.tmpl harbor.yml

# 编辑harbor配置文件
vi harbor.yml
hostname: 172.26.209.51

harbor_admin_password: Harbor12345

database:
  password: root123
  max_idle_conns: 100
  max_open_conns: 900

data_volume: /data

trivy:
  ignore_unfixed: false
  skip_update: false
  insecure: false

jobservice:
  max_job_workers: 10

notification:
  webhook_job_max_retry: 10

chart:
  absolute_url: disabled

log:
  level: info
  local:
    rotate_count: 50
    rotate_size: 200M
    location: /var/log/harbor

_version: 2.3.0

proxy:
  http_proxy:
  https_proxy:
  no_proxy:
  components:
    - core
    - jobservice
    - trivy

10、安装harbor

./prepare

./install.sh

使用

1、重启

# 停止
docker-compose stop

# 启动
docker-compose up -d

2、无法登陆

dial tcp xx:443: connect: no route to host

########## Client Client Server Server ##########
vi /etc/docker/daemon.json
########## Client Client Server Server ##########


{
    "registry-mirrors": ["https://giuzc4qh.mirror.aliyuncs.com"],
	"insecure-registries": ["192.168.111.111"],
}

systemctl daemon-reload && systemctl restart docker

# 登录到harbor
docker login 192.168.111.111 -uzheng -pZxt19960417

systemctl daemon-reload && systemctl restart docker && docker login 192.168.111.111 -uzheng -pZxt19960417

3、Docker权限

# 如果 docker ps 报错没有权限, 创建docker用户组
sudo groupadd docker

# 将当前登陆用户加入到docker用户组中
sudo gpasswd -a $USER docker

# 更新用户组
newgrp docker

4、开机自启

vi /lib/systemd/system/harbor.service


#####
[Unit]
Description=Harbor
After=docker.service systemd-networkd.service systemd-resolved.service
Requires=docker.service
Documentation=http://github.com/vmware/harbor

[Service]
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/local/bin/docker-compose -f  /usr/local/harbor/docker-compose.yml up
ExecStop=/usr/local/bin/docker-compose -f /usr/local/harbor/docker-compose.yml down

[Install]
WantedBy=multi-user.target
#####

systemctl enable harbor

systemctl start harbor

5、防火墙

# 查看防火墙状态
firewall-cmd --state

# 关闭防火墙
systemctl stop firewalld.service

# 禁止防火墙开机自启
systemctl disable firewalld.service 
1

评论区