Docker部署Nexus Repository页面持续卡在Initializing状态求助
Nexus Repository 主页卡在
Initializing...无法加载的问题 问题详情
通过浏览器访问 Nexus Repository 主页(地址:http://<server_ip>:8081/)时,页面持续显示Initializing...,无法完成加载。
环境配置
Docker Compose 配置
cup-nexus: image: sonatype/nexus3 restart: always container_name: cup-nexus volumes: - /DevOps/volumes/nexus-data:/nexus-data ports: - 8081:8081 networks: - wso2_bridge
容器日志片段
2023-05-11 20:48:41,109+0000 INFO [jetty-main-1] *SYSTEM org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Initialized 2023-05-11 20:48:41,135+0000 INFO [jetty-main-1] *SYSTEM org.eclipse.jetty.server.handler.ContextHandler - Started o.e.j.w.WebAppContext@44379b0f{Sonatype Nexus,/,file:///opt/sonatype/nexus/public/,AVAILABLE} 2023-05-11 20:48:41,169+0000 INFO [jetty-main-1] *SYSTEM org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@5a750c01{HTTP/1.1, (http/1.1)}{0.0.0.0:8081} 2023-05-11 20:48:41,170+0000 INFO [jetty-main-1] *SYSTEM org.eclipse.jetty.server.Server - Started @32769ms 2023-05-11 20:48:41,170+0000 INFO [jetty-main-1] *SYSTEM org.sonatype.nexus.bootstrap.jetty.JettyServer - ------------------------------------------------- Started Sonatype Nexus OSS 3.53.0-01 ------------------------------------------------- 2023-05-11 20:48:44,548+0000 INFO [quartz-12-thread-1] *SYSTEM org.sonatype.nexus.quartz.internal.task.QuartzTaskInfo - Task 'System - Repository Health Check: maven-central' [healthcheck] state change WAITING -> RUNNING ... 2023-05-11 20:52:08,780+0000 INFO [qtp192929389-86] *UNKNOWN org.apache.shiro.session.mgt.AbstractValidatingSessionManager - Enabling session validation scheduler... 2023-05-11 20:52:08,788+0000 INFO [qtp192929389-86] *UNKNOWN org.sonatype.nexus.internal.security.anonymous.AnonymousManagerImpl - Loaded configuration: OrientAnonymousConfiguration{enabled=true, userId='anonymous', realmName='NexusAuthorizingRealm'} 2023-05-11 20:53:31,381+0000 WARN [qtp192929389-87] *SYSTEM org.eclipse.jetty.io.AbstractConnection - java.lang.NullPointerException: null at org.eclipse.jetty.io.AbstractConnection.lambda$failedCallback$0(AbstractConnection.java:92) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034) at java.lang.Thread.run(Thread.java:750) 2023-05-11 20:53:37,261+0000 WARN [qtp192929389-80] *SYSTEM org.eclipse.jetty.io.AbstractConnection - java.lang.NullPointerException: null at org.eclipse.jetty.io.AbstractConnection.lambda$failedCallback$0(AbstractConnection.java:92) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034) at java.lang.Thread.run(Thread.java:750) 2023-05-11 20:53:50,795+0000 WARN [qtp192929389-83] *SYSTEM org.eclipse.jetty.io.AbstractConnection - java.lang.NullPointerException: null
版本信息
- Docker-Compose: 3
- Nexus Repository: 3.53.0-01
解决方法
1. 修复宿主机目录权限
Nexus容器默认使用UID/GID为200的nexus用户运行,挂载目录权限错误会导致数据读写异常:
- 执行命令修改目录权限:
sudo chown -R 200:200 /DevOps/volumes/nexus-data - 重启容器:
docker-compose restart cup-nexus
2. 清理浏览器缓存或使用无痕模式
浏览器缓存的旧资源可能引发加载冲突,尝试:
- 清除当前浏览器的缓存与Cookie
- 切换到无痕/隐私窗口重新访问
3. 检查端口占用与网络规则
- 确认宿主机8081端口未被其他进程占用:
netstat -tulpn | grep 8081 - 若端口被占用,修改Docker Compose的端口映射(如改为
8082:8081)后重启容器 - 检查服务器防火墙、安全组是否开放8081端口的入站流量
4. 查看完整日志定位错误
日志中的NullPointerException可能关联具体初始化问题,查看完整Nexus日志:
- 进入挂载目录查看日志:
cd /DevOps/volumes/nexus-data/log tail -f nexus.log - 排查是否存在数据库初始化失败、插件加载异常等详细错误信息
5. 重置Nexus数据目录(谨慎操作)
若上述方法无效,可重置数据目录(会丢失现有配置与仓库数据):
- 停止并删除容器:
docker-compose down - 备份并清空数据目录:
mv /DevOps/volumes/nexus-data /DevOps/volumes/nexus-data.bak mkdir /DevOps/volumes/nexus-data sudo chown -R 200:200 /DevOps/volumes/nexus-data - 重新启动容器:
docker-compose up -d
内容的提问来源于stack exchange,提问作者Aldo Inácio da Silva
相关产品推荐
相关产品推荐

