在公网上,一般情况下都不暴露默认端口,避免被攻击!

以下修改harbor的默认80端口为其他端口!

我这里示例修改为1180端口!

注意:以下步骤都是在harbor目录下操作!!!

1、修改docker-compose.yml文件映射为1180端口:

 #vim docker-compose.yml

 proxy:
image: nginx:1.11.
container_name: nginx
restart: always
volumes:
- ./common/config/nginx:/etc/nginx
ports:
- :
- :
depends_on:
- mysql
- registry
- ui
- log

2、修改common/templates/registry/config.yml文件加入1180端口:

#vim common/templates/registry/config.yml

auth:
token:
issuer: registry-token-issuer
realm: $ui_url:/service/token
rootcertbundle: /etc/registry/root.crt
service: token-service

3、停止harbor,重新启动并生成配置文件:

#docker-compose stop
# ./install.sh

4、修改docker启动文件,设置信任的主机与端口:

#vim /usr/lib/systemd/system/docker.service  修改如下一行
ExecStart=/usr/bin/dockerd --insecure-registry=172.16.103.99:

5、重新启动docker:

systemctl daemon-reload
systemctl restart docker.service

最后,测试验证:

# docker login 172.16.103.99:
Username: huangjc
Password:
Login Succeeded

ok,完成!

记得登录时是1180这个端口哦!!

常见的2个报错信息解答:

(1)Error response from daemon: Get https://172.16.103.99/v1/users/: dial tcp 172.16.103.99:443: getsockopt: connection refused

(2)Error response from daemon: Get https://172.16.103.99:1180/v1/users/: http: server gave HTTP response to HTTPS client

报这2个错误的都是如下2个原因:

1、是端口错了!

2、未在docker启动文件中添加--insecure-registry信任关系!

大多数这个错误是第2个原因,因为你没有添加信任关系的话,docker默认使用的是https协议,所以端口不对(443),会报连接拒绝这个错误;

或者提示你 "服务器给HTTPS端的是HTTP响应" 这个错误,因为你没添加端口信任,服务器认为这是默认的https访问,返回的却是http数据!

解决方法:

正确的添加信任关系包括端口号:

--insecure-registry=172.16.103.99:1180

一定要把主机与端口同时添加进去!

注:

记住,这是harbor镜像仓库,而不是单纯的registry容器仓库!

如果你用的是默认的80端口,则不需要加,或者加上80也行,而不是5000这个端口!

Harbor使用 -- 修改80端口的更多相关文章

  1. linux中安装nginx时查看修改80端口时没有iptables文件的内容?? 求解

  2. 解决linux下80端口占用问题

    在即安装有tomcat,又安装有nginx的服务器上(典型阿里云驻云java镜像),系统默认配置nginx占用80端口,tomcat占用8080端口. 如果想要便于用户可以直接通过IP或者域名访问到t ...

  3. wamp 修改默认apache 80端口

    wamp server 环境安装包 修改默认80端口 D:\wamp\bin\apache\apache2.4.9\conf\httpd.conf 找到如下代码出修改后,重启apache即可 ## L ...

  4. phpstudy 80端口被占用,修改端口

    搭建mantis,总会出现80端口被占用的情况.看到别的步骤是:1.cmd 运行netstat -ano查看80端口被什么占用,然后在任务管理器找到对应的结束进程.通常情况下是被System占用,右击 ...

  5. mac版tomcat修改端口无法访问,80端口无法访问

    在mac上安装好了tomcat,修改了端口为80,没想到关闭tomcat时提示出错,而且无法访问,原来我犯了两个错误. 1.我用的是mac上的文本编辑.app打开然后修改的,重新修改为8080也不行, ...

  6. linux下如何修改iptables开启80端口

    linux下如何修改iptables开启80端口   最近在做本地服务器的环境,发现网站localhost能正常访问,用ip访问就访问不了,经常使用CentOS的朋友,可能会遇到和我一样的问题.开启了 ...

  7. Linux下tomcat修改成的80端口无法访问

    转自: https://blog.csdn.net/u013252047/article/details/72834415 tomcat放到服务器上访问8080端口还需要输入端口号,造成访问不便,好多 ...

  8. System进程(pid=4)占用80端口的解决方案

    问题 Mail服务器在安装TFS服务(含SQLServer2016)后启动不了网页服务. 排查问题 使用命令查看端口占用情况 netstat -nao | find ":80" n ...

  9. Apache服务器在80端口配置多域名虚拟主机的方法

    我们在配置一台服务器的时候,如果只运行一个站点,往往过于浪费资源.Nginx和Apache都可以通过配置虚拟主机实现多站点.配置虚拟主机的方式主要有两种,一种是多个不同端口对应的多个虚拟主机站点,一种 ...

随机推荐

  1. __call__方法和Flask中 first_or_404

    1.__call__方法: 在一个类的实例中,函数一般都是可调用的对象: __call__方法时魔法方法,该方法允许程序员创建可调用的对象(实例),默认情况下是不会触发,也就是说,大多数实例是不可被调 ...

  2. (转)Linux vi 命令大全

    进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...

  3. vue 自适应 Responsive 设计

    使用阿里的 lib-flexible 及 vue-meta 库: https://github.com/amfe/lib-flexible/ https://github.com/nuxt/vue-m ...

  4. python进阶(一) 多进程并发机制

    python多进程并发机制: 这里使用了multprocessing.Pool进程池,来动态增加进程 #coding=utf-8 from multiprocessing import Pool im ...

  5. 自增ID算法snowflake - C#版

    急景流年,铜壶滴漏,时光缱绻如画,岁月如诗如歌.转载一篇博客来慰藉,易逝的韶华. 使用UUID或者GUID产生的ID没有规则 Snowflake算法是Twitter的工程师为实现递增而不重复的ID实现 ...

  6. 027-Session状态提供程序

    Session分三种:1.InProc(进程内)-默认就是这种-速度快/但内存小/易丢失进程外:可以在IIS或ASPNET服务意外关闭时继续保持状态,注意此时存储到session中的对象必须支持序列化 ...

  7. 最小生成树模板题 hpu 积分赛 Vegetable and Road again

    问题 H: Vegetable and Road again 时间限制: 1 Sec 内存限制: 128 MB 提交: 19 解决: 8 题目描述 修路的方案终于确定了.市政府要求任意两个公园之间都必 ...

  8. qt 实现的电视遥控系统,如何让qt响应来自遥控器的按键信息?

    结帖率 60% 如题:目前在做一个项目,使用qt实现一个类似于机顶盒的遥控系统,那么关键的问题来了,如何让qt响应遥控器的按键信息呢? 应该分两步吧:1.搭载qt的终端接收来自遥控器的按键信息,并解析 ...

  9. 使用Python在自己博客上进行自动翻页

    先上一张代码及代码运行后的输出结果的图! 下面上代码: # coding=utf-8 import os import time from selenium import webdriver #打开火 ...

  10. 内置函数_map、filter

     1.map   #循环帮你调用函数 map(makir,dir_names)     #生成器,结果是一个内存地址.为了节省内存,每次循环时,就按照定义的规则去生成一个数据,循环一次释放一次生成的数 ...