Harbor私服无法在外网访问?-灵析社区

半寸时光爱思考

我们在局域网内搭建了一个Harbor私服,局域网IP地址为: 192.168.3.9,这台机器本身具有公网IP,也有公网域名。 harbor.yml配置文件中,hostname配置为: #hostname: xxxx(公网ip) hostname: 192.168.3.9 现在发现一个问题,如果把hostname配置为内网地址,那么在局域网内可以访问。但在公网是无法访问的,即通过本机的外网ip无法访问。 如果将 Hostname改成 公网ip,那么存在另一个问题,就是在公网可以访问,但在局域网无法访问。 网上查了一些文章,有说要改 `external_url`的,好像又配置了一个nginx?(harbor已经自带了2个nginx了,还要再配置第3个nginx吗?)还有的好像要改 下面的 proxy段。 proxy: http_proxy: https_proxy: no_proxy: components: - core - jobservice - trivy 现在比较混乱了。 需要怎样改呢?谢谢! 补充说明一下, 目前使用http就可以了。 暂时不涉及证书问题。 两个参考网页: [https://www.cnblogs.com/breeze-24/p/16250853.html](https://link.segmentfault.com/?enc=8THJiv%2BZU3GcEXaBjDUSsg%3D%3D.kf99ZwfV%2BezswGaTJahTKKfMZE8COkaJokAQg9orixKEnIpX%2ByL2i8cDKpbx8rpKdu5h2Att3Ddf%2F2mZyAlpSA%3D%3D) [https://www.cnblogs.com/zhangmingcheng/p/14167615.html](https://link.segmentfault.com/?enc=VpcHHomInomMaFbI9Vyf%2Fw%3D%3D.2cU5N5V01RejA4syqby7F5XFUt62QU7VTp2pHOr6XMDd%2F%2Bkds60yUbWO1DKk5sUY369BkaTFFLbUFROgb5fy4w%3D%3D) 2023-12-06补充: 这个问题我重新做了下跟踪和总结,参考:

阅读量:14

点赞量:0

问AI
我看了一下我自己本地的harbor v2.8.4,发现似乎和 hostname / external_url 都没有关系。 这个hostname字段,看上去只和web上显示提示的推送命令提示有关系。 不管hostname改成什么,都不会影响到nginx,nginx默认配置里面server_name是注释掉的。 所以,这里不管通过什么IP/Hostname访问,只要访问的端口正确,即通过80/443/或者设置的其他端口,都能访问到harbor的服务。 理想情况下,我觉得可以把hostname改成域名比较合适,在内网访问时DNS服务器返回内网IP,在外网访问时DNS服务器返回外网IP。 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241127/88fde7af2a3b483b7c411e0dc31437cc.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241127/7e6e35b0dab150f408518c15c9b75e4f.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241127/306a02fcdc0f14dbaf94c87682516f58.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241127/f5386b0cf14f3f1bcd497adfd6c32958.png)