Ubuntu18 安装搭建Harbor
1.安装docker-compose1.下载docker-compose的最新版本
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
2.为docker-compose添加可执行权限
chmod +x /usr/local/bin/docker-compose
3.验证查看docker-compose版本
docker-compose --version

如果docker compose的版本太低会提示如下错误:

2.安装Harbor
1)下载Harbor https://github.com/goharbor/harbor/releases ( 推荐离线安装包)

tar -zxvf harbor-offline-installer-v1.8.0.tgz #解压离线安装包
mv harbor /opt/ #移到/opt目录下
cd /opt #进入到/opt目录
cd harbor
ll #查看目录内容
进入harbor目录修改harbor.yml 文件如下(我这里下载的离线安装的版本):

然后安装
./prepare
./install.sh



注意docker 里面不要有redis容器 否者会有提示for redis Cannot create container for service redis: Conflict
3.使用Harbor
进入http://192.168.100.3


1.增加仓库地址:
文件目录:/etc/docker/daemon.json (没有则新建该文件)
{ "insecure-registries":["192.168.100.3:80"] }
或者用指令 echo '{ "insecure-registries":["192.168.100.3:80"] }' > /etc/docker/daemon.json
重启dcoker:service docker restart
网上还有一种方法是:
修改 /lib/systemd/system/docker.service 在ExecStart的最后增加:--insecure-registry=198.168.100.3:80
修改docker.service一定要执行systemctl daemon-reload刷新配置 ,然后重启 systemctl restart docker
连接本地的harbor

如果是windows ,右击docker图标,在settings里的Deamon的Insecure registries里增加Harbor的IP和端口,docker会自动重启


2.push 镜像
为了以防用户信息错乱 可以先logout 然后在login
docker logout 192.168.100.3:80
docker login 192.168.100.3:80
a.新建repo-test私有仓库,

#拉取镜像
docker pull hello-world
#给镜像打tag(镜像的格式为,镜像仓库IP:端口/镜像名称)
docker tag hello-world 192.168.100.3:/repo-test/hello-world:
#PUSH到仓库
docker push 192.168.100.3:/repo-test/hello-world


如果遇到如下错误:
root@gavin-vm:~# docker push 192.168.100.3:80/hello-world
The push refers to repository [192.168.100.3:80/hello-world]
af0b15c8625b: Retrying in 5 seconds
其实是打tag时打的不对 通过命令journalctl -u docker.service 或者 查看日志文件/var/log/harbor/registry.log查看错误日志
----2019-8-14 补充
如图所示 每当ubuntu重启后 harbor的某些容器不能自动启动起来

也尝试过修改container的启动参数 docker container update --restart=always 容器名字/ID (禁止命令 docker container update --restart=no 容器名字/ID ),但是查看 /opt/harbor/docker-compose.yml文件里面确实有 restart: always
解决方案就是:将 harbor配成systemd的service,添加配置文件 /etc/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=
ExecStart=/usr/local/bin/docker-compose -f /opt/harbor/docker-compose.yml up
ExecStop=/usr/local/bin/docker-compose -f /opt/harbor/docker-compose.yml down [Install]
WantedBy=multi-user.target
然后启动该服务:
sudo systemctl enable harbor
sudo systemctl start harbor
重启再看,发现 harbor 容器组终于全部 up 了:

参考地址
How To Install and Use Docker Compose on Ubuntu 18.04
Centos7 搭建 Harbor 私有仓库(一) -- 以http方式搭建
Ubuntu18 安装搭建Harbor的更多相关文章
- 搭建Harbor企业级docker仓库
搭建Harbor企业级docker仓库 一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如 ...
- 搭建Harbor私有镜像仓库--v1.5.1
搭建Harbor私有镜像仓库--v1.5.1 1.介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境 ...
- kubernetes搭建Harbor无坑及Harbor仓库同步
一.helm搭建harbor 1.安装helm 1.1.安装helm客户端 tar -zxvf helm-v2.14.3-linux-amd64.tar.gz mv linux-amd64/helm ...
- 搭建Harbor
搭建Harbor 一.安装准备 二.安装docker-ce 三.安装docker-compose 四.安装harbor 5.1下载安装程序 5.2配置harbor.yml 5.3运行install.s ...
- Centos7搭建Harbor私有仓库(二)
1 说明 前文Centos7搭建Harbor私有仓库(一)中成功搭建了Harbor,但,是以http方式搭建的,这里我们修改为https方式 以下基于镜像CentOS-7-x86_64-Minimal ...
- docker搭建harbor私有镜像库
创建harbor私有镜像库 一.部署准备: harbor软件包 在部署节点上: 1)解压harbor的软件包将harbor目录下所有文件发送到/opt/目录下 tar zxvf harbor- ...
- 搭建harbor企业级私有registry
主机环境要求 硬件Hardware Resource Capacity Description CPU minimal 2 CPU 4 CPU is prefered Mem minimal 4GB ...
- Docker私服搭建--Harbor
Docker私服搭建--Harbor Harbor概述 Harbor的安全机制 Harbor的镜像同步 Harbor的镜像同步机制 Harbor的多级部署 一.安装 1.1 docker安装 1.2 ...
- centos6.5下Zabbix系列之Zabbix安装搭建及汉化
最近在研究zabbix,在整理完成之后就有了写一下总结博客的想法,在我研究zabbix的时候给我很大帮助的是it你好,博客地址http://itnihao.blog.51cto.com/他做的zabb ...
随机推荐
- C++运算符重载学习总结
在C ++中,我们可以使运算符适用于用户定义的类. 这意味着C ++能够为运算符提供数据类型的特殊含义,这种能力称为运算符重载. 例如,我们可以在像String这样的类中重载运算符'+',这样我们就可 ...
- WorkFlow一:WorkFlow基础配置
1.使用事物代码SWU3进入WF配置页. 2.展开第一个运行环境维护文件夹,选中第一个配置RFC目标,点击生成.完成后可点击运行按钮测试是否成功. 同上,挨个激活. 3.激活第二个文件夹‘维护环境定义 ...
- itextpdf5生成document生成pdf的简单dome
package dbzx.pdf; import java.io.FileNotFoundException; import java.io.FileOutputStream; import org. ...
- 是否忘记了向源中添加“#include "StdAfx.h"”?
错误分析 此错误发生的原因是编译器在寻找预编译指示头文件(默认#include "stdafx.h")时,文件未预期结束.没有找到预编译指示信息的头文件"stdafx.h ...
- Windows Server 2008 R2(x64) IIS7+PHP5.6.30(FastCGI)环境搭建
相关软件下载: 1.PHP下载地址: http://windows.php.net/downloads/releases/ 1.安装Microsoft Visual C++ 2012 Redistri ...
- python应用之socket编程
tcp/udp下的socket的基本使用 基于tcp的socket Tcp是基于链接的,必须先启动服务端,然后启动客户端进行链接 服务端: ss = socket() #创建服务器套接字 ss.bin ...
- Python 和 R 中的一数多图
R # 一数多图 x <- 2:6 y <- 7:3 y1 <- y +2 opar <- par(no.readonly = TRUE) par(mfrow=c(2, 3)) ...
- vue-loader作用
(1)浏览器本身并不认为.vue文件,所以必须对.vue文件进行加载解析,此时需要vue-loader (2)类似的loader还有许多,如:html-loader.css-loader.style- ...
- 第03节-BLE协议各层数据格式概述
本篇博客根据韦大仙的视频,整理所得. 对于BLE系统,它分为上下两块.上面那一块,我们称为host主机.下面这一块是controller,你可以简单的认为它就是一个蓝牙芯片. 对于host这一块,它运 ...
- 利用$a_n$与$S_n$的关系求通项$a_n$
前言 由\(a_n\)与\(S_n\)的关系求数列\(\{a_n\}\)的通项公式,在求通项公式题型中占有比较大的份额,是一个重要的求解思路和方法.是要求重点掌握的类型. 一.方法依据 二者关系:\( ...