使用Docker-compose时,Apache Guacamole卡住了。

3

我使用Docker-compose 1.25.0版本,包含Nginx容器和Guacamole + Guacd 1.2.0版本的容器。

环境正常运行,但每隔2-3天,Guacamole + Guacd容器就会卡在以下日志信息:

Guacamole:

guacamole_1       | 14:48:48.651 [http-nio-8080-exec-68] INFO  o.a.g.tunnel.TunnelRequestService - User "guacadmin" disconnected from connection "21875". Duration: 10349153 milliseconds
guacamole_1       | 14:48:59.902 [http-nio-8080-exec-77] INFO  o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/root/.guacamole".
guacamole_1       | 14:49:11.606 [http-nio-8080-exec-81] INFO  o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/root/.guacamole".
guacamole_1       | 14:49:23.103 [http-nio-8080-exec-87] INFO  o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/root/.guacamole".
guacamole_1       | 14:49:40.457 [http-nio-8080-exec-94] INFO  o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/root/.guacamole".
guacamole_1       | 14:49:48.032 [http-nio-8080-exec-102] INFO  o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/root/.guacamole".
guacamole_1       | 14:49:56.853 [http-nio-8080-exec-107] INFO  o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/root/.guacamole".

guacd:

guacd_1           | guacd[15306]: INFO: Accepted format: 16-bit PCM with 2 channels at 44100 Hz
guacd_1           | guacd[15306]: ERROR:        User is not responding.
guacd_1           | guacd[15306]: INFO: User "@48e59b0d-c88b-405c-8a88-c6d5dc75cf4b" disconnected (0 users remain)
guacd_1           | guacd[15306]: INFO: Last user of connection "$730dba5f-ceca-468a-85da-ac7d55fc9a41" disconnected
guacd_1           | guacd[15306]: INFO: Internal RDP client disconnected
guacd_1           | guacd[6]: INFO:     Connection "$730dba5f-ceca-468a-85da-ac7d55fc9a41" removed.
guacd_1           | guacd[15254]: ERROR:        User is not responding.
guacd_1           | guacd[15254]: INFO: User "@1b440518-4540-4935-90d7-b58887fa08d5" disconnected (0 users remain)
guacd_1           | guacd[15254]: INFO: Last user of connection "$7f2b67df-d6b6-486a-9718-0b6dd10b7efd" disconnected
guacd_1           | guacd[15228]: ERROR:        User is not responding.
guacd_1           | guacd[15228]: INFO: User "@8b94a59f-9486-4616-920d-eab33e2bf9be" disconnected (0 users remain)
guacd_1           | guacd[15228]: INFO: Last user of connection "$47eab730-314c-4429-9b81-d16ed2ac458a" disconnected
guacd_1           | guacd[15254]: INFO: Internal RDP client disconnected
guacd_1           | guacd[15228]: INFO: Internal RDP client disconnected
guacd_1           | guacd[6]: INFO:     Connection "$47eab730-314c-4429-9b81-d16ed2ac458a" removed.
guacd_1           | guacd[6]: INFO:     Connection "$7f2b67df-d6b6-486a-9718-0b6dd10b7efd" removed.
guacd_1           | guacd[20341]: ERROR:        Error connecting to RDP server

我的API代码在请求Guacamole的token时得到了(<Response [502]>,),容器被卡住了,在日志中没有其他移动。
我尝试使用`docker-compose down`命令将所有东西都停止,然后重新启动。但是我不理解是什么导致了这个问题,因为一切都很好,直到它不工作,只有完全重启才能使其再次工作。
如何知道是什么导致了这个问题?是否有方法可以在容器卡住时使Docker重新启动?我正在考虑将Guacd和Guacamole从1.2.0更新到1.3.0版本,只是不明白为什么突然之间(在一切正常运行6个月后)就出现了这个错误。
1个回答

0
Docker在8月30日左右发布了一次重大的产品和服务条款更新,这可能是您问题的根源。与其与RDP错误堆栈作斗争,不如尝试运行以下基于oznu修改的guacamole镜像的docker-compose.yml文件。它包括guacamole Web客户端、guacd服务器和一个postgres数据库。这些容器已经在我的机器上运行了大约一周,没有出现任何问题。
version: "2"
services:
  guacamole:
    image: oznu/guacamole
    container_name: guacamole
    volumes:
      - postgres:/config
    ports:
      - 8080:8080
volumes:
  postgres:
    driver: local

嗨,感谢您的回答。问题始于两个月前,我无法在另一台机器上复制它,因为这台机器上有很多流量,我已将docker更新到20,docker-compose更新到1.29,guacamole + guacd从1.2更新到1.3-目前为止一切顺利。 - Batchen Regev
很高兴听到这个消息!如果有任何变化,请告诉我。 - jrbe228
好的,没有任何变化,每天一两次,guacd容器会卡住,我可以在docker-compose ps中看到容器是健康的,但日志停止在容器中,就像没有新的日志。我发现的奇怪的事情是:如果我重新启动容器,一切都开始工作了,我可以看到从卡住时起的旧日志 - 这意味着如果我在5:00之后看不到日志,然后在7:00重启,我将看到从5点到7点的所有日志,我正在考虑将我的环境从Docker转换为Kubernetes,我会再更新。 - Batchen Regev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接