harbor1.7.1的访问报错502 bad gateway

2024-06-04 19:28

本文主要是介绍harbor1.7.1的访问报错502 bad gateway,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景:

在访问harbor镜像仓库时提示报错如下:

问题分析:

根据提供的报错内容来看时harbor服务的nginx组件服务异常了的,导致无法访问harbor服务,查看harbor服务结果如下:

service@harbor:~/harbor$ docker-compose psName                     Command                 State                                   Ports                              
-----------------------------------------------------------------------------------------------------------------------------------
harbor-adminserver   /harbor/start.sh                 Up                                                                           
harbor-core          /harbor/start.sh                 Up                                                                           
harbor-db            /entrypoint.sh postgres          Up           5432/tcp                                                        
harbor-jobservice    /harbor/start.sh                 Up                                                                           
harbor-log           /bin/sh -c /usr/local/bin/ ...   Up           127.0.0.1:1514->10514/tcp                                       
harbor-portal        nginx -g daemon off;             Restarting                                                                   
nginx                nginx -g daemon off;             Up           0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp, 0.0.0.0:80->80/tcp
redis                docker-entrypoint.sh redis ...   Up           6379/tcp                                                        
registry             /entrypoint.sh /etc/regist ...   Up           5000/tcp                                                        
registryctl          /harbor/start.sh                 Up                     

根据docker-compose ps查询的内容来看,是harbor-portal组件服务异常了,导致了nginx组件服务也异常了。

这时候查看harbor服务各个组件的健康状态情况,通过docker ps服务查看

service@harbor:~/harbor$ docker ps -a
CONTAINER ID        IMAGE                                    COMMAND                  CREATED             STATUS                       PORTS                                                              NAMES
3fc9f7342c5d        goharbor/nginx-photon:v1.7.1             "nginx -g 'daemon ..."   3 months ago        Up 13 hours (unhealthy)      0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp   nginx
6eee31ef2bfc        goharbor/harbor-jobservice:v1.7.1        "/harbor/start.sh"       3 months ago        Up 13 hours                                                                                     harbor-jobservice
321ef98c530a        goharbor/harbor-portal:v1.7.1            "nginx -g 'daemon ..."   3 months ago        Restarting (1) 6 hours ago                                                                      harbor-portal
fed5f6eaf486        goharbor/harbor-core:v1.7.1              "/harbor/start.sh"       3 months ago        Up 13 hours (healthy)                                                                           harbor-core
122bbc2f6b56        goharbor/harbor-registryctl:v1.7.1       "/harbor/start.sh"       3 months ago        Up 13 hours (healthy)                                                                           registryctl
7be0ed1ad358        goharbor/harbor-db:v1.7.1                "/entrypoint.sh po..."   3 months ago        Up 13 hours (healthy)        5432/tcp                                                           harbor-db
2448c27d1db9        goharbor/registry-photon:v2.6.2-v1.7.1   "/entrypoint.sh /e..."   3 months ago        Up 13 hours (healthy)        5000/tcp                                                           registry
d7a2691f9a2c        goharbor/harbor-adminserver:v1.7.1       "/harbor/start.sh"       3 months ago        Up 13 hours (healthy)                                                                           harbor-adminserver
d987bcb50630        goharbor/redis-photon:v1.7.1             "docker-entrypoint..."   3 months ago        Up 13 hours                  6379/tcp                                                           redis
d7df267a0dc9        goharbor/harbor-log:v1.7.1               "/bin/sh -c /usr/l..."   3 months ago        Up 13 hours (healthy)        127.0.0.1:1514->10514/tcp                                          harbor-log

这里可以发现nginx处于unhealthy,不健康的状态。

这时候需要分析harbor-portal组件服务为什么报错了,因为harbor使用了syslog服务作为存放日志,所以我们只需要到/var/log/harbor目录下找到对应的服务日志文件查看即可。

service@harbor:/var/log/harbor$ tail -1000f portal.log
........
Jun  4 03:58:54 localhost portal[119121]: 2024/06/03 19:58:54 [emerg] 1#0: mkdir() "/etc//nginx/client_body_temp" failed (13: Permission denied)
Jun  4 03:58:54 localhost portal[119121]: nginx: [emerg] mkdir() "/etc//nginx/client_body_temp" failed (13: Permission denied)

根据日志的提示是portal容器在运行的时候需要创建/etc/nginx/client_body_temp目录,但是提示权限不足无法创建。

问题解决方案:

这里的处理方案就是重新创建portal服务即可。

先停止harbor-portal服务

service@harbor:~/harbor$ docker-compose stop portal
Stopping harbor-portal ... done

查看是否已经停止掉harbor-portal服务 

service@harbor:~/harbor$ docker-compose psName                     Command               State                                 Ports                              
-------------------------------------------------------------------------------------------------------------------------------
harbor-adminserver   /harbor/start.sh                 Up                                                                       
harbor-core          /harbor/start.sh                 Up                                                                       
harbor-db            /entrypoint.sh postgres          Up       5432/tcp                                                        
harbor-jobservice    /harbor/start.sh                 Up                                                                       
harbor-log           /bin/sh -c /usr/local/bin/ ...   Up       127.0.0.1:1514->10514/tcp                                       
harbor-portal        nginx -g daemon off;             Exit 1                                                                   
nginx                nginx -g daemon off;             Up       0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp, 0.0.0.0:80->80/tcp
redis                docker-entrypoint.sh redis ...   Up       6379/tcp                                                        
registry             /entrypoint.sh /etc/regist ...   Up       5000/tcp                                                        
registryctl          /harbor/start.sh                 Up                    

重建harbor-portal服务

service@harbor:~/harbor$ docker-compose up portal
Creating harbor-portal ... done
harbor-adminserver is up-to-date
registry is up-to-date
harbor-core is up-to-date
Creating harbor-portal ... 
Attaching to harbor-portal
harbor-portal  | WARNING: no logs are available with the 'syslog' log driver
harbor-portal exited with code 0

验证harbor-portal服务是否恢复,nginx服务是否也是恢复了

service@harbor:~/harbor$ docker-compose psName                     Command               State                                Ports                              
------------------------------------------------------------------------------------------------------------------------------
harbor-adminserver   /harbor/start.sh                 Up                                                                      
harbor-core          /harbor/start.sh                 Up                                                                      
harbor-db            /entrypoint.sh postgres          Up      5432/tcp                                                        
harbor-jobservice    /harbor/start.sh                 Up                                                                      
harbor-log           /bin/sh -c /usr/local/bin/ ...   Up      127.0.0.1:1514->10514/tcp                                       
harbor-portal        nginx -g daemon off;             Up      80/tcp                                                          
nginx                nginx -g daemon off;             Up      0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp, 0.0.0.0:80->80/tcp
redis                docker-entrypoint.sh redis ...   Up      6379/tcp                                                        
registry             /entrypoint.sh /etc/regist ...   Up      5000/tcp                                                        
registryctl          /harbor/start.sh                 Up                 
service@harbor:~/harbor$ docker ps 
CONTAINER ID        IMAGE                                    COMMAND                  CREATED             STATUS                   PORTS                                                              NAMES
9d729ec76f0c        goharbor/harbor-portal:v1.7.1            "nginx -g 'daemon ..."   2 minutes ago       Up 2 minutes (healthy)   80/tcp                                                             harbor-portal
3fc9f7342c5d        goharbor/nginx-photon:v1.7.1             "nginx -g 'daemon ..."   3 months ago        Up 14 hours (healthy)    0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp   nginx
6eee31ef2bfc        goharbor/harbor-jobservice:v1.7.1        "/harbor/start.sh"       3 months ago        Up 14 hours                                                                                 harbor-jobservice
fed5f6eaf486        goharbor/harbor-core:v1.7.1              "/harbor/start.sh"       3 months ago        Up 14 hours (healthy)                                                                       harbor-core
122bbc2f6b56        goharbor/harbor-registryctl:v1.7.1       "/harbor/start.sh"       3 months ago        Up 14 hours (healthy)                                                                       registryctl
7be0ed1ad358        goharbor/harbor-db:v1.7.1                "/entrypoint.sh po..."   3 months ago        Up 14 hours (healthy)    5432/tcp                                                           harbor-db
2448c27d1db9        goharbor/registry-photon:v2.6.2-v1.7.1   "/entrypoint.sh /e..."   3 months ago        Up 14 hours (healthy)    5000/tcp                                                           registry
d7a2691f9a2c        goharbor/harbor-adminserver:v1.7.1       "/harbor/start.sh"       3 months ago        Up 14 hours (healthy)                                                                       harbor-adminserver
d987bcb50630        goharbor/redis-photon:v1.7.1             "docker-entrypoint..."   3 months ago        Up 14 hours              6379/tcp                                                           redis
d7df267a0dc9        goharbor/harbor-log:v1.7.1               "/bin/sh -c /usr/l..."   3 months ago        Up 14 hours (healthy)    127.0.0.1:1514->10514/tcp                                          harbor-log

这时候发现nginx服务也是healthy状态了,然后去浏览器上访问一下:

然后去输入账号密码即可。

这篇关于harbor1.7.1的访问报错502 bad gateway的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1030908

相关文章

504 Gateway Timeout网关超时的根源及完美解决方法

《504GatewayTimeout网关超时的根源及完美解决方法》在日常开发和运维过程中,504GatewayTimeout错误是常见的网络问题之一,尤其是在使用反向代理(如Nginx)或... 目录引言为什么会出现 504 错误?1. 探索 504 Gateway Timeout 错误的根源 1.1 后端

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

Java报错:org.springframework.beans.factory.BeanCreationException的五种解决方法

《Java报错:org.springframework.beans.factory.BeanCreationException的五种解决方法》本文解析Spring框架中BeanCreationExce... 目录引言一、问题描述1.1 报错示例假设我们有一个简单的Java类,代表一个用户信息的实体类:然后,

通过配置nginx访问服务器静态资源的过程

《通过配置nginx访问服务器静态资源的过程》文章介绍了图片存储路径设置、Nginx服务器配置及通过http://192.168.206.170:8007/a.png访问图片的方法,涵盖图片管理与服务... 目录1.图片存储路径2.nginx配置3.访问图片方式总结1.图片存储路径2.nginx配置

解决若依微服务框架启动报错的问题

《解决若依微服务框架启动报错的问题》Invalidboundstatement错误通常由MyBatis映射文件未正确加载或Nacos配置未读取导致,需检查XML的namespace与方法ID是否匹配,... 目录ruoyi-system模块报错报错详情nacos文件目录总结ruoyi-systnGLNYpe

kkFileView启动报错:报错2003端口占用的问题及解决

《kkFileView启动报错:报错2003端口占用的问题及解决》kkFileView启动报错因office组件2003端口未关闭,解决:查杀占用端口的进程,终止Java进程,使用shutdown.s... 目录原因解决总结kkFileViewjavascript启动报错启动office组件失败,请检查of

WinForm跨线程访问UI及UI卡死的解决方案

《WinForm跨线程访问UI及UI卡死的解决方案》在WinForm开发过程中,跨线程访问UI控件和界面卡死是常见的技术难题,由于Windows窗体应用程序的UI控件默认只能在主线程(UI线程)上操作... 目录前言正文案例1:直接线程操作(无UI访问)案例2:BeginInvoke访问UI(错误用法)案例

解决1093 - You can‘t specify target table报错问题及原因分析

《解决1093-Youcan‘tspecifytargettable报错问题及原因分析》MySQL1093错误因UPDATE/DELETE语句的FROM子句直接引用目标表或嵌套子查询导致,... 目录报js错原因分析具体原因解决办法方法一:使用临时表方法二:使用JOIN方法三:使用EXISTS示例总结报错原

MySQL中的InnoDB单表访问过程

《MySQL中的InnoDB单表访问过程》:本文主要介绍MySQL中的InnoDB单表访问过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、访问类型【1】const【2】ref【3】ref_or_null【4】range【5】index【6】