docker18.ce harbor 安装
Harbor 是什么?
harbor VMware 开发的一个容器镜像仓库,harbor的功能提供用户权限管理、镜像复制等功能,提高使用的registry的效率。
安装最新版的docker可以参考docker的官网
https://docs.docker.com/install/linux/docker-ce/centos/
一、安装docker
环境:centos7.5 2c2g
安装依赖
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 安装源
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo 查看docker版本 yum list docker-ce --showduplicates | sort -r docker-ce.x86_64 3:18.09.3-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.2-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.3.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.2.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 18.03.0.ce-1.el7.centos docker-ce-stable 安装docker
sudo yum install docker-ce-18.06.3.ce-3.el7
二、配置docker 加速
安装好docker之后配置国内镜像拉取,配置的文件是 /etc/docker/daemon.json
这个文件刚开始的时候是没有的。需要手动创建。或者使用daocloud 上面配置
访问:https://www.daocloud.io/mirror 拉倒最下面
查看Docker加速器
Linux :curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
配置好了后重启docker systemctl daemon-reload
systemctl restart docker
三、配置harbor 镜像仓库
使用harbor镜像仓库的好处,图形化界面,方便管理。
安装harbor 我们需要 安装Docker Compose。
安装docker compose 我们还是参考docker官方文档 :https://docs.docker.com/compose/install/
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
下载harbor 安装包
访问:https://github.com/goharbor/harbor/releases
我们可以看到harbor的包有两种,一种是offline(离线安装),一种是online(在线安装)。我们选择离线安装。 wget https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v1.7.4.tgz 解压
tar -zxf harbor-offline-installer-v1.7.4.tgz
解压完成后 进入harbor目录,我们只需要修改harbor.cfg文件中hostname,将reg.mydomain.com 换成你宿主机的IP地址
sed -i s'/reg.mydomain.com/192.168.1.200/' harbor.cfg 执行
./prepare
执行成功后
./install.sh
安装完成后访问宿主机IP地址。
默认用户名密码是:admin Harbor12345

配置docker镜像仓库
vim /etc/docker/daemon.json
{
"registry-mirrors": ["http://f1361db2.m.daocloud.io"], #镜像加速地址
"insecure-registries": ["192.168.1.200"], #docker镜像仓库地址
} 重启docker
systemctl daemon-reload
systemctl restart docker
测试
docker pull busybox docker tag busybox:latest 192.168.1.200:80/library/busybox:v1 docker login 192.168.1.200:80 #登录Harbor镜像仓库 docker push 192.168.1.200:80/library/busybox:v1 #推送镜像到仓库

四、镜像安全
harbor 如果放在公网上,一般都不要暴露使用默认端口,防止攻击。
1、修改docker-compose.yml文件映射为1180端口:
proxy:
image: goharbor/nginx-photon:v1.7.4
container_name: nginx
restart: always
cap_drop:
- ALL
cap_add:
- CHOWN
- SETGID
- SETUID
- NET_BIND_SERVICE
volumes:
- ./common/config/nginx:/etc/nginx:z
networks:
- harbor
dns_search: .
ports:
- 1180:80
- 443:443
- 4443:4443
depends_on:
- postgresql
- registry
- core
- portal
- log
只修改 docker-compose.yml文件 web页面访问正常,但docker login时,会出现问题
[root@server ~]# docker login 192.168.1.200:1180
Username: admin
Password:
Error response from daemon: Get http://192.168.1。200:1180/v2/: unable to decode token response: invalid character 'A' looking for beginning of value
2、修改common/templates/registry/config.yml 这个文件,将1180端口加入里面
vim common/templates/registry/config.yml auth:
token:
issuer: harbor-token-issuer
realm: $public_url:1180/service/token
rootcertbundle: /etc/registry/root.crt
service: harbor-registry
3、重启harbor
docker-compose stop
./install.sh
4、修改/etc/docker/daemon.json
{
"registry-mirrors": ["http://f1361db2.m.daocloud.io"],
"insecure-registries": ["192.168.1.200:1180"]
}
5、重启docker
systemctl daemon-reload
systemctl restart docker
6、重新打tag,推送harbor
docker tag busybox:latest 192.168.1.200:1180/library/busybox:v1
docker login 192.168.1.200:1180
docker push 192.168.1.200:1180/library/busybox:v1 查看web界面是否有此镜像
docker18.ce harbor 安装的更多相关文章
- docker 私有镜像管理工具harbor 安装
因为各种原因,官方的离线安装包下载比较费事,经常不成功,所以通过分部安装解决问题 1. docker yum install libdevmapper* -y -H tcp://0.0.0.0:237 ...
- (一)Harbor安装 -- 企业级Registry仓库
根据Harbor官方描述: Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docker Distri ...
- Docker CE 各安装方法
1.Docker CE 镜像源站 使用官方安装脚本自动安装 curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 2.U ...
- Docker CE的安装 与镜像加速
Docker CE 的安装与镜像加速 Docker CE是docker的开源版本 CENTOS 安装Docker CE 系统要求: 操作系统需要使用centos7() centos-extras库 必 ...
- Harbor安装 -- 企业级Registry仓库
(一)Harbor安装 -- 企业级Registry仓库 以下文章转自http://www.jianshu.com/p/2ebadd9a323d 根据Harbor官方描述: Harbor是一个用于存储 ...
- docker CE 的安装
一.Docker CE的安装1.先决条件运行环境:Ubuntu 64位或者其他支持Docker的64位系统运行配置,linux内核版本必须大于 3.10,否则会因为缺少容器运行所需的功能而出错. 2. ...
- Docker私服仓库Harbor安装
Harbor安装那里还是很简单,就是在Docker Login那里掉坑里去了,搞半天,写博客的时候,又重新安装了一遍 1.准备两台服务器 centos7 harbor 10.19.46.15 clie ...
- docker 私有registry harbor安装
一,harbor安装: 参考:Installation and Configuration Guide 1,安装docker 2,安装docker compose sudo curl -L " ...
- Centos7 docker、harbor 安装配置
Docker 安装 wget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo wget ...
随机推荐
- Go常量与运算符
常量的定义 常量的值在编译时就已经确定 常量的定义格式与变量基本相同 等号右侧必须是常量或者常量表达式 常量表达式中的函数必须是内置函数 package main import ( "fmt ...
- java的构造方法链
转自:http://blog.csdn.net/Mr_KkTian/article/details/70226561 1.简介 构造一个类的实例时, 将会调用沿着继承链的所有父类的构造方法. 当构造一 ...
- Rectangles(第七届ACM省赛原题+最长上升子序列)
题目链接: http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=1255 描述 Given N (4 <= N <= 100) rec ...
- GCD之定时器dispatch_source_t(转载暂时未完全理解)
#import "ViewController.h" @interface ViewController (){ IBOutlet UIButton *l_timeButton; ...
- webpack与gulp的区别
gulp是工具链.构建工具,可以配合各种插件做js压缩,css压缩,less编译 替代手工实现自动化工作 1.构建工具 2.自动化 3.提高效率用 webpack是文件打包工具,可以把项目的各种js. ...
- Android-Messenger跨进程通信
http://blog.csdn.net/lmj623565791/article/details/47017485 一.概述 我们可以在客户端发送一个Message给服务端,在服务端的handler ...
- Java虚拟机 - 类加载机制
[深入Java虚拟机]之四:类加载机制 类加载过程 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载.验证.准备.解析.初始化.使用和卸载七个阶段.它们开始的顺序如下 ...
- Spring MVC + Velocity实现国际化配置
国际化介绍 web开发中,国际化是需要考虑的一个问题,而且这个问题一般是越早敲定越好(不然等到系统大了,翻译是个问题).下面是结合实际项目(Spring MVC+Velocity)对实现国际化的一些总 ...
- HDU1281(KB10-D 二分图最大匹配)
棋盘游戏 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- document.head.appendChild(element) 在 IE8 及以下报错
问题: 在开发中会遇到动态添加 script 标签的情况. 代码如下: var oScript = document.createElement('script'); oScript.src = 'd ...