linuxserver / docker-calibre

GNU General Public License v3.0
338 stars 62 forks source link

Since latest update, calibre runs, but connection not working #104

Closed maxximux2000 closed 1 year ago

maxximux2000 commented 1 year ago

I have multiples docker containers on the same server that are all working exept Calibre since the latest update. I get a connection refused by server, I check the docker container status in Portainer.IO and it's working as expected, but I cannot connect from the server itself using localhost or from another computer on the same network using the server ip:8080. I tried multiples browser as well (Chrome and Firefox) with same result. Server is Ubuntu 22.04.1 LTS

github-actions[bot] commented 1 year ago

Thanks for opening your first issue here! Be sure to follow the bug or feature issue templates!

dangmai commented 1 year ago

I am running into the same issue - I run Calibre in a Kubernetes cluster, and ever since the rebase to jammy, the graphical UI is not working. Reverting to the last focal-based release makes the UI work again.

Weirdly enough, based on the commit log it looks like 6.5.0 should contain the jammy rebase commit, yet when I revert to that version it's showing focal as the base image - that's the last release that's working for me.

I'm running the x86_64 version. Here's the log, nothing looks really out of place:

2022-09-30T06:51:09-07:00   2022-09-30T09:51:09.474279823-04:00 stdout F [custom-init] No custom files found, skipping...
2022-09-30T06:51:06-07:00   2022-09-30T09:51:06.296966523-04:00 stdout F **** No auth enabled. To enable auth, you can set the PASSWORD var in docker arguments. ****
2022-09-30T06:51:06-07:00   2022-09-30T09:51:06.237196918-04:00 stderr F -----
2022-09-30T06:51:06-07:00   2022-09-30T09:51:06.233578867-04:00 stderr F ....+......+......+.....+....+......+..+.+.....+.........+.......+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*.......+...........+.+...+..+................+..+.+.........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..+..+....+.....+......+......+.......+.....+.+.....+....+...+.........+...+.................+.+..+.......+.....+...+...+.......+......+............+..+...+....+.....+..........+......+..+.+.....+....+......+.....+............+...+.+...+.....+...+...+......+.+........+............+...............+....+......+...+.....+......+.........+.+......+..+.............+..+......+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2022-09-30T06:51:06-07:00   2022-09-30T09:51:06.113186056-04:00 stderr F ...............+..+...+.+.....+.+.........+....................+.+..+.+..............+...+...+.+........+.......+.....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+......+..+...+.+.....+.+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*........+.....+....+.....+.......+...............+...+............+...+..+....+.....+...+...+..........+........+.+...............+.....+...+.+..+...+....+...+.....+.......+...+........+......+...+................+.....+.........+......+....+..+...+.+.....+.+..............+.+...............+...+..+....+..+.......+....................+.+..+..........+.....+...+.+...+.....+.+.....+......+.........+....+..+.+.....+...+............+...+....+..+....+...........+...+.............+.....+.......+...+..+.+...............+.........+...+.....+....+...+..+......+...+.......+..+...+.......+..+.........+................+...+.....+.+...........+.............+...+..+......+.+.....+.+............+..+...+..........+...........+....+........+..........+..+.............+..+...+....+...+........+...+.+.....+....+.....+......+.+...+.........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.864294652-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.864291567-04:00 stdout F saving to rsakeys.ini
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.864288031-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.864284369-04:00 stdout F ssl_gen_key_xrdp1 ok
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.864280012-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.864274078-04:00 stdout F Generating 2048 bit rsa key...
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.864239823-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.348410928-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.348407314-04:00 stdout F -------------------------------------
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.348404035-04:00 stdout F User gid:    1000
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.34839946-04:00 stdout F User uid:    1000
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.348355854-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345757835-04:00 stdout F -------------------------------------
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345737888-04:00 stdout F GID/UID
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345659706-04:00 stdout F -------------------------------------
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345657233-04:00 stdout F https://www.linuxserver.io/donate/
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345653312-04:00 stdout F To support LSIO projects visit:
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345629745-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345627337-04:00 stdout F -------------------------------------
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345624926-04:00 stdout F Brought to you by linuxserver.io
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345622452-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345620006-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345617748-04:00 stdout F          |_| |___/ |_|  \__/
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345615362-04:00 stdout F          | | \__ \ | | | () |
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345612686-04:00 stdout F          | | / __| | |  /  \
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345610158-04:00 stdout F          | |  ___   _    __
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345606457-04:00 stdout F           _         ()
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.34559912-04:00 stdout F -------------------------------------
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.345533488-04:00 stdout F 
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.291718528-04:00 stdout F [migrations] no migrations found
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.291694832-04:00 stdout F [migrations] started
2022-09-30T06:51:05-07:00   2022-09-30T09:51:05.233142552-04:00 stdout F [custom-init] No custom services found, skipping...

The environment variables set are:

PGID: 1000
PUID: 1000
TZ: "America/Los_Angeles"
aptalca commented 1 year ago

You probably have locally cached image of a 6.5.0 version that was pushed before the rebase to jammy. Do a docker pull and recreate, it will likely no longer work.

Make sure you add the seccomp arg that's now in the readme

dangmai commented 1 year ago

Good point about it being locally cached! I will have to figure out a way to add the seccomp profile to a Kubernetes pod then, since it's not even running Docker (it's running containerd). Hopefully there is a way around it.

aptalca commented 1 year ago

Pretty sure k8s supports security options. Let us know if it works because there are too many users reporting similar issues with little to no confirmation of whether that solved their issue

mcloughlin77 commented 1 year ago

Experiencing the same issue. Looking into it k8s default security options is already unconfined but explicitly setting it at the pod or container level didn't make it work.

dangmai commented 1 year ago

Yeah same here, Unconfined seccomp policy does not help.

dangmai commented 1 year ago

I've been trying to debug this issue and keep running into dead-ends, is there anyway to log seccomp violations in the container to see if that's the cause?

Exec-ing into the container and running htop shows me that a bunch of services are not running correctly. For example here's a screenshot of the processes in a Kubernetes container:

2022-09-30 10_58_22-ToastWindow

vs how it should be (this is running in a normal Docker container):

2022-09-30 10_49_47-

I'm comfortable debugging more about this, but it'd be great to have some guidance on what to look for. I've tried running in multiple clusters (from k8s 1.21 to 1.25) on different kernels (5.5 and 5.15), and none of the combinations work.

maxximux2000 commented 1 year ago

I have personally downgraded to version 6.4.0 and now I can access the calibre library without problem, I will continue to monitor the new release to see if this has been resolved.

j0nnymoe commented 1 year ago

Multiple reasons why you could be having issues here. Unless people provide information about their deployment and hardware/os they're using, we can't help. (Hence why this issue is marked as invalid)

PriamX commented 1 year ago

I'm not sure if it's the same issue the OP is having...I downgraded to 6.4.0 but it did not fix the issue like it did for the OP. I did add the seccomp:unconfined option, that didn't seem to make a difference (no change in the errors).

I'm running on Fedora 35 (latest kernel 5.19.12-100.fc35.x86_64) Docker version 20.10.18, build b40c2f6 Deploying using recommended compose.

Here's the log file (trimmed up a bit because it is LONG):

[custom-init] No custom services found, skipping...
[migrations] started
[migrations] no migrations found

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/

Brought to you by linuxserver.io
-------------------------------------

To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1001
User gid:    1001
-------------------------------------

Generating 2048 bit rsa key...

ssl_gen_key_xrdp1 ok

saving to rsakeys.ini

.+...+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..+....+...+.....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..+........+.+..+...............+.......+...........+....+..+.+.........+.....+.........+.+........+.+..+..................+.+......+...+...........+.+............+..+...................+..+...............+............+.+......+...+..................+...+...........+.............+...............+..+...+...+....+...+...........+...................+.....+.+.................+.........+......+.......+...+.....+...............+....+...+........+....+......+..+...+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
...+.+......+..+......+.......+........+......+.........+....+.....+...+...+....+..+.........+....+...+..+...+....+.........+.........+...+.........+...+..+....+..............+...+...+............+..........+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*...+...+.....+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*..+.+......+.................+............+......+.........+....+...........+...+...............+.+.....+..........+.....+.+.....+.+........+.+......+...............+..+.............+...............+.....+....+.........+.................+...+.+...+...+..+.+...........+...+...+...+.+...+...+........+......+.........+....+...+...+.........+....................+......+.+.....+.+.........+.....+.+.....+.........+...............+.........+....+..+....+......+...+..+...+.......+.........+...........+.+...+.....+.+.....+.........+.......+..+...+...+..........+.....+............+....+...........+....+...+.....+.+......+...+..+..........+.....+.............+........+.............+...........+...............+......+.............+.....+....+...+...............+..+...+...+......+.+..+...+....+...+...+..............+....+...........+...+.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-----
**** No auth enabled. To enable auth, you can set the PASSWORD var in docker arguments. ****
[custom-init] No custom files found, skipping...
guacd[210]: INFO:   Guacamole proxy daemon (guacd) version 1.1.0 started
guacd[210]: INFO:   Listening on host 0.0.0.0, port 4822
guacd[210]: INFO:   Guacamole connection closed during handshake
Starting guacamole-lite websocket server
listening on *:8080
[ls.io-init] done.
[guac-init] Auto start set, starting application
[2022-10-04 08:42:53] [Connection 1]  Client connection open
[2022-10-04 08:42:53] [Connection 1]  Opening guacd connection
[2022-10-04 08:42:53] [Connection 1]  guacd connection open
[2022-10-04 08:42:53] [Connection 1]  Selecting connection type: rdp
[2022-10-04 08:42:53] [Connection 1]  Sending opCode: 6.select,3.rdp;
guacd[210]: INFO:   Creating new client for protocol "rdp"
guacd[210]: INFO:   Connection ID is "$2f5a53b5-87e2-425f-acf6-50791b761a26"
[2022-10-04 08:42:53] [Connection 1]  Sending opCode: 4.size,4.1024,3.768,2.96;
[2022-10-04 08:42:53] [Connection 1]  Sending opCode: 5.audio,9.audio/L16;
[2022-10-04 08:42:53] [Connection 1]  Sending opCode: 5.video;
[2022-10-04 08:42:53] [Connection 1]  Sending opCode: 5.image;
[2022-10-04 08:42:53] [Connection 1]  Server sent handshake: 4.args,13.VERSION_1_1_0,8.hostname,4.port,6.domain,8.username,8.password,5.width,6.height,3.dpi,15.initial-program,11.color-depth,13.disable-audio,15.enable-printing,12.printer-name,12.enable-drive,10.drive-name,10.drive-path,17.create-drive-path,7.console,13.console-audio,13.server-layout,8.security,11.ignore-cert,12.disable-auth,10.remote-app,14.remote-app-dir,15.remote-app-args,15.static-channels,11.client-name,16.enable-wallpaper,14.enable-theming,21.enable-font-smoothing,23.enable-full-window-drag,26.enable-desktop-composition,22.enable-menu-animations,22.disable-bitmap-caching,25.disable-offscreen-caching,21.disable-glyph-caching,16.preconnection-id,18.preconnection-blob,8.timezone,14.recording-path,14.recording-name,24.recording-exclude-output,23.recording-exclude-mouse,22.recording-include-keys,21.create-recording-path,13.resize-method,18.enable-audio-input,9.read-only,16.gateway-hostname,12.gateway-port,14.gateway-domain,16.gateway-username,16.gateway-password,17.load-balance-info
[2022-10-04 08:42:53] [Connection 1]  Sending opCode: 7.connect,0.,9.127.0.0.1,4.3389,0.,3.abc,3.abc,4.1024,3.768,2.96,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,3.any,4.true,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.;
guacd[263]: INFO:   Security mode: Negotiate (ANY)
guacd[263]: INFO:   Resize method: none
guacd[263]: INFO:   User "@f868a352-9721-446f-bcb3-b59e58df3263" joined connection "$2f5a53b5-87e2-425f-acf6-50791b761a26" (1 users now present)
5.ready,37.$2f5a53b5-87e2-425f-acf6-50791b761a26;
guacd[263]: INFO:   Loading keymap "base"
guacd[263]: INFO:   Loading keymap "en-us-qwerty"
5.audio,1.1,31.audio/L16;rate=44100,channels=2;4.size,1.0,4.1024,3.768;4.size,2.-1,2.11,2.16;3.img,1.3,2.12,2.-1,9.image/png,1.0,1.0;4.blob,1.3,232.iVBORw0KGgoAAAANSUhEUgAAAAsAAAAQCAYAAADAvYV+AAAABmJLR0QA/wD/AP+gvaeTAAAAYklEQVQokY2RQQ4AIQgDW+L/v9y9qCEsIJ4QZggoJAnDYwAwFQwASI4EO8FEMH95CRYTnfCDOyGFK6GEM6GFo7AqKI4sSSsCJH1X+roFkKdjueABX/On77lz2uGtr6pj9okfTeJQAYVaxnMAAAAASUVORK5CYII=;3.end,1.3;6.cursor,1.0,1.0,2.-1,1.0,1.0,2.11,2.16;
sh: 1: xauth: not found

X.Org X Server 1.21.1.3
X Protocol Version 11, Revision 0
Current Operating System: Linux ba96876ed63f 5.19.12-100.fc35.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Sep 28 17:54:10 UTC 2022 x86_64
Kernel command line: BOOT_IMAGE=(md/boot)/vmlinuz-5.19.12-100.fc35.x86_64 root=UUID=10cb5b02-d171-448a-ad09-cc80ada54905 ro resume=UUID=adaaf2d6-44ce-4872-8daf-227d96b74d0f rd.md.uuid=e035b16a:add9c4ed:c1393fe4:9e2e88c6 rd.md.uuid=08d6b246:6ceca906:1f919245:5365bc25 rd.md.uuid=cc01b6c6:73726735:18870e50:1d36500e rd.dirver.blacklist=nouveau nouveau.modeset=0 rhgb quiet
xorg-server 2:21.1.3-2ubuntu2.1 (For technical support please see http://www.ubuntu.com/support) 
Current version of pixman: 0.40.0
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(++) Log file: ".xorgxrdp.10.log", Time: Tue Oct  4 14:42:55 2022
(++) Using config file: "/etc/X11/xrdp/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
xorgxrdpSetup:
xrdpdevSetup:
rdpmousePlug:
      
rdpkeybPlug:
      
rdpIdentify:
rdpDriverFunc: op 10
      
:
rdpProbe: found DRMDevice xorg.conf value [/dev/dri/renderD128]
rdpProbe: found DRI3 xorg.conf value [1]
rdpPreInit:
rdpPreInit: /dev/dri/renderD128 open failed
rdpScreenInit: virtualX 800 virtualY 600 rgbBits 8 depth 24
rdpScreenInit: pfbMemory bytes 1920000
rdpScreenInit: pfbMemory 0x7fd85d0a5010
rdpSimdInit: assigning yuv functions
rdpSimdInit: cpuid ax 1 cx 0 return ax 0x000906ea bx 0x03100800 cx 0x7ffafbff dx 0xbfebfbff
rdpSimdInit: sse2 amd64 yuv functions assigned
rdpClientConInit: disconnect idle session after [0] sec
rdpClientConInit: kill disconnected [0] timeout [0] sec
rdpXvInit: depth 24
rdpScreenInit: out
4.sync,8.58151085;
rdpCreateScreenResources:
rdpmousePreInit: drv 0x5604cc382dc0 info 0x5604cc507390, flags 0x0
rdpmouseControl: what 0
rdpmouseDeviceInit:
rdpmouseCtrl:
rdpRegisterInputCallback: type 1 proc 0x7fd85e5453b0
rdpmouseControl: what 1
rdpmouseDeviceOn:
rdpkeybPreInit: drv 0x5604cc383370 info 0x5604cc691540, flags 0x0
rdpkeybControl: what 0
rdpkeybDeviceInit:
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat on
rdpRegisterInputCallback: type 0 proc 0x7fd85d9c7d50
rdpkeybControl: what 1
rdpkeybDeviceOn:
rdpDeferredRandR:
rdpResizeSession: width 1024 height 768
  calling RRScreenSizeSet
rdpRRScreenSetSize: width 1024 height 768 mmWidth 271 mmHeight 203
rdpRRGetInfo:
  screen resized to 1024x768
  RRScreenSizeSet ok 1
rdpResizeSession: width 1024 height 768
rdpClientConGotConnection:
rdpClientConGotConnection: g_sck_accept ok new_sck 9
rdpClientConGetConnection: idle_disconnect_timeout set to non-positive value, idle timer turned off
rdpAddClientConToDev: adding first clientCon 0x5604cc6d9860
rdpClientConProcessMsgVersion: version 0 0 0 1
rdpClientConProcessScreenSizeMsg: set width 1024 height 768 bpp 16
rdpClientConProcessScreenSizeMsg: shmemid 0 shmemptr 0x7fd85d0fa000
rdpClientConProcessMsgClientInput: invalidate x 0 y 0 cx 1024 cy 768
rdpInDeferredRepeatCallback:
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat off
4.sync,8.58151336;
(EE) Failed to open authorization file ".Xauthority": No such file or directory
rdpClientConProcessMsgClientInfo:
  got client info bytes 7072
  jpeg support 0
  offscreen support 0
  offscreen size 0
  offscreen entries 0
  client supports glyph cache but server disabled
  client can not do offscreen to offscreen blits
  client can do new(color) cursor
  client can not do multimon
rdpRRSetRdpOutputs: numCrtcs 0 numOutputs 0 monitorCount 0
rdpRRSetRdpOutputs: add output 0 left 0 top 0 width 1024 height 768
rdpLoadLayout: keylayout 0x00000409 variant  display 10
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat on
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat on
4.size,2.-1,2.32,2.32;3.img,1.3,2.12,2.-1,9.image/png,1.0,1.0;4.blob,1.3,240.iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAAaElEQVRYhe2WSwrAIAwFfaX3v3K6ceF38VRaCjO7SEwGBWNKAPAxcpIjIqrNkkZrTs3bSc4NKqEmdsv5AmUTSUtNj5CPPtorcLkO+SCAAAIIILCMNYxm7365/vY47mKX3XHcfUgA4Hc8/F4zGEf7ahwAAAAASUVORK5CYII=;3.end,1.3;6.cursor,2.15,2.16,2.-1,1.0,1.0,2.32,2.32;
4.size,2.-1,2.32,2.32;3.img,1.3,2.12,2.-1,9.image/png,1.0,1.0;4.blob,1.3,276.iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAAgklEQVRYhe2UOxLAIAhEd5nc/8qbBjOOMbECGl6lWOzDHyQJhRgAVEoYAJAsk7AxqJKweVIhYWshW+IlkC2xFciU+BTIkvgVyJC4vhbWTEkiyVABSZgzIgJXniPwcI7OUy/hCI8O27Lr0mvyYewrKOv8RNYuHP+BUuRUezRN0zRNKDeQH1722aSHGAAAAABJRU5ErkJggg==;3.end,1.3;6.cursor,1.0,1.0,2.-1,1.0,1.0,2.32,2.32;4.size,2.-1,2.32,2.32;3.img,1.3,2.12,2.-1,9.image/png,1.0,1.0;4.blob,1.3,256.iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAAdElEQVRYhe2VOxLAIAhEd5nc/8qkQcd8dNLIFuFVoAWPAUd4ABEGACShkrAWqCRsTBQSdj/IlngIZEu8CmRKTAWyJJYCGRLH7CJrDy8C7g6SPeeYbKKPIIqzdZ66hK347mKfic49Qu0rkKH+pouiKIqi+A8nWNBM/C9+/cYAAAAASUVORK5CYII=;3.end,1.3;6.cursor,1.1,1.1,2.-1,1.0,1.0,2.32,2.32;4.sync,8.58151402;
guacd[263]: INFO:   Accepted format: 16-bit PCM with 2 channels at 44100 Hz
guacd[263]: INFO:   Accepted format: 16-bit PCM with 2 channels at 22050 Hz
guacd[263]: INFO:   Connected to RDPDR 1.12 as client 0xf3ac2b4f
4.sync,8.58151424;4.sync,8.58151424;
3.end,1.1;5.audio,1.1,31.audio/L16;rate=22050,channels=2;4.sync,8.58151425;4.sync,8.58151425;
guacd[263]: INFO:   RDPDR user logged on
4.sync,8.58151425;
rdpInDeferredRepeatCallback:
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat off
rdpInDeferredRepeatCallback:
rdpkeybChangeKeyboardControl:
rdpkeybChangeKeyboardControl: autoRepeat off
4.sync,8.58151525;
4.sync,8.58151775;
4.sync,8.58152026;
4.sync,8.58152276;
4.sync,8.58152527;
4.sync,8.58152777;
4.sync,8.58153027;
4.sync,8.58153278;
3.img,1.3,2.14,1.0,9.image/png,1.0,1.0;4.blob,1.3,256.iVBORw0KGgoAAAANSUhEUgAABAAAAAMAAQMAAACAdIdOAAAAA1BMVEUAAACnej3aAAAAdklEQVR4nO3BAQEAAACCIP+vbkhAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7waDDwABtWbkhAAAAABJRU5ErkJggg==;3.end,1.3;4.sync,8.58153316;
3.img,1.3,2.14,1.0,9.image/png,3.237,3.336;4.blob,1.3,8064.iVBORw0KGgoAAAANSUhEUgAAAiYAAABgCAIAAACmMi5JAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nO2dX2gbyZ7vf+fSA9XgQBdEoILVQz14oQ0JSDCGNKwf+oIXZMiADScQweZBCzkgQwYs2MAIbi5oIAsyTMCCDRw9ZEEDOSDDHIjgBG4/eKENOSBBAmpYP9SDF0qgQDVY0AXph/vQtizrj9WSncQzUx+GwZK6S6WWUt/+/a0/3EuboFAoFArF5+d/fe0JKBQKheL3gpIchUKhUHwhtK89gUmEACD1ECAECAF9AoBA3tIDhL72zBQKhUKxOFMkJ5QLDba4JOi+RADwCSAMomcujqWjEwiU4igUCsWvmTHJCSUWbMHBvgFh0FGxiIHel0YQDB7BAkMoFAqF4sYzKjl6GEw8LhafQJfBIu4vbeo5Z9ZWACH8WpRoZdkwl7FJDYzBQDpo4MuAc8mOZeuDYMf+tBN1BHsla+RT1veZ4/LJJ2hQe24NP7FdcoNZBmqpkKZUHzys1jotz5/26jkhSAlCBOyjbHu89d6HcPZ8hk/3ZSB60mPSbXPOJ8xyZdnYebwyY/YAcPk1USgUN5hxx9pCLrUrz2LoXYOJ80C3dF2DYHyZu0msLBsPs5SkRpdsY0k3lnVzGbI24cfBjy/bE4UhfZeMq6qVNm7E8qoBWgKypJOUbqUxXw+qr7yJyjHtdGNJN5Z0SiG7RhyX1/+6qDGtUCh+tdyI9IFAAwTn1hXSdWygJEGYIJLEBkEkgdCSXtvvuK2pJsJXZ2udZm0y84qSlI40FEySdittjD9JUxgnkOh9jVuB6ZDbevGRuVNpT7B1ZqKBvUb8vnzj3AApVSgUX5AbITkAYG+skCQaqAtoE6aGDR3ghkrOhk2y62TkSdkHxoWUgBBQgtHSZSNgjEyKJ7yggZUmb95+HZvAOTx1gukI0mZy2Odm3Natu8RtXSYb7bYIAHQNkglEkheMv+wanSE5ElhvspvXP7mC+1ehUHw9Rtd1IQH6VxhPXzDeYq0njduTQghDJBM3NJZDU8bmOh1+Rvah1ui0PlwQSEKQbRH721FlirDS+MK3EZ5/OXbGePP2WmccG68jBpGeNw4fifSQf0DQuuz0WsMbuBBti

[TRIMMED HERE...goes on for hundreds of lines]

+7s7v//l3YXdpldQXi/CMPzMAuyA8Cj5fIFvVgCJaUZvTCbU6tg6GWzwjI3b6Byda7GqmZZR2XQFhYrUZbqvF5fQuXFgibuU65IseygvmzJ9XK4XqMhlR2SZcbTIwdfarBlaSsKTbJaJOtZDU/Q5TW6qnpNxR3HbRpG0xWnAqjRx1tXeJfFtoNfxVgHyJkS74ZptfiRZJg50DHPIY8FK5zSoT3BeygTxgZ0FN5Tohgd2Izjt1jijG3Y4ULEb4lIBgN3YBc3kHGu4Ba7kEcNIn6PZMKgZB66pmgg+L0w2AhamF2AHm6Aca7gFj3yaexzwcOC72PB40KbCAc1WQhwmtBAQv+QCING9AhhA98XRrQmSh2xTVfNLhyzHTc4ySr0wj1tZxT6p3wIDLM99JkYM+f9mNfqq6/1Ihpn2mWWP85Gk+zqIv3TuNaQADe3aR/f3UgerveubKif90Nd5sF4nL6BqqCm9DRtiz5P8GRAtZKHwIsWI8DrW9KYGQ/ieID3j/hBNo69PzOexOxD+Uy4P83oy1EUx3lOvD/NYIxGMj2y7Gk4ifZtOSgfpyk8SfEu4r+66Tz5C7f7AW79THlcaVmzQzrkhsVsOGvy+/f3a6RzKKNRwoV/geCy0Gp8UskAAAAASUVORK5CYII=;3.end,1.3;4.sync,8.58157883;
4.sync,8.58158133;
4.sync,8.58158384;
4.sync,8.58158634;
4.sync,8.58158884;
4.sync,8.58159134;
4.sync,8.58159385;
[2022-10-04 08:43:03] [Connection 1]  Closing connection with error:  Error: WS was inactive for too long
    at ClientConnection.checkActivity (/gclient/node_modules/guacamole-lite/lib/ClientConnection.js:154:24)
    at listOnTimeout (node:internal/timers:559:17)
    at processTimers (node:internal/timers:502:7)
[2022-10-04 08:43:03] [Connection 1]  Closing guacd connection
[2022-10-04 08:43:03] [Connection 1]  Client connection closed
guacd[263]: ERROR:  User is not responding.
guacd[263]: INFO:   User "@f868a352-9721-446f-bcb3-b59e58df3263" disconnected (0 users remain)
guacd[263]: INFO:   Last user of connection "$2f5a53b5-87e2-425f-acf6-50791b761a26" disconnected
guacd[263]: INFO:   Internal RDP client disconnected
guacd[210]: INFO:   Connection "$2f5a53b5-87e2-425f-acf6-50791b761a26" removed.
rdpClientConRecv: g_sck_recv failed(returned 0)
rdpClientConRecvMsg: error
rdpClientConCheck: rdpClientConGotData failed
rdpClientConDisconnect:
rdpRemoveClientConFromDev: removing clientCon 0x5604cc6d9860
aptalca commented 1 year ago

What's your compose yaml?

PriamX commented 1 year ago

@aptalca FYI...

 calibre:
    image: linuxserver/calibre
    container_name: calibre
    security_opt:
      - seccomp:unconfined #optional
    environment:
      - PUID=1001
      - PGID=1001
      - TZ=America/Denver
      - SUBFOLDER=/calibre/
    volumes:
      - /media/docker/appdata/calibre:/config
      - /media/books/calibre/library:/books
    dns:
      - 8.8.8.8
      - 8.8.4.4
    ports:
      - 8080:8080
      - 8081:8081
    networks:
      - mynet
    healthcheck:
      test: (curl --fail -s http://localhost:8080/ && curl --fail -s http://localhost:8081/) || exit 1
      interval: 1m30s
      timeout: 10s
      retries: 3
    restart: unless-stopped
aptalca commented 1 year ago

Can you exec into the container docker exec -it calibre bash and then run this? s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c 'umask ${UMASK:-022} && /usr/bin/calibre'

PriamX commented 1 year ago

@aptalca yes, no prob:

[root@mediaserv ~]# docker exec -it calibre /bin/bash
root@0369d649e423:/# s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c 'umask ${UMASK:-022} && /usr/bin/calibre'
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vkkhrdisplay, vnc, wayland-egl, wayland, xcb.

Aborted (core dumped)
root@0369d649e423:/#
aptalca commented 1 year ago

That's the same error I get when I don't set the seccomp bit correctly nevermind, I'm an idiot. That error is because it's not being run by openbox so it can't access the gui bits and it's not related to seccomp.

I need to find a better test

aptalca commented 1 year ago

OK, so what do you experience when you try to open the gui? An error about child process? or nothing?

If nothing, exec into the container and run echo "xterm" > /defaults/autostart and restart the container You should hopefully see terminal window in the gui. Run calibre and see what happens

PriamX commented 1 year ago

When I open the GUI (port 8080), the only thing displayed on the web page is Cannot GET /

Making that change (putting xterm in the autostart) and restarting the calibre container, I still get the same error in the webpage, Cannot GET /

The tail of the logfile looks pretty-much the same:

4.sync,8.70320119;
4.sync,8.70320369;
4.sync,8.70320619;
4.sync,8.70320870;
4.sync,8.70321120;
[2022-10-04 12:05:45] [Connection 1]  Closing connection with error:  Error: WS was inactive for too long
    at ClientConnection.checkActivity (/gclient/node_modules/guacamole-lite/lib/ClientConnection.js:154:24)
    at listOnTimeout (node:internal/timers:559:17)
    at processTimers (node:internal/timers:502:7)
[2022-10-04 12:05:45] [Connection 1]  Closing guacd connection
[2022-10-04 12:05:45] [Connection 1]  Client connection closed
guacd[244]: ERROR:  User is not responding.
guacd[244]: INFO:   User "@bf8a4622-61c4-4d7d-9e4f-375da5699de4" disconnected (0 users remain)
guacd[244]: INFO:   Last user of connection "$ccc33915-a25e-48fd-bcaa-711af54872d5" disconnected
guacd[244]: INFO:   Internal RDP client disconnected
rdpClientConRecv: g_sck_recv failed(returned 0)
rdpClientConRecvMsg: error
rdpClientConCheck: rdpClientConGotData failed
rdpClientConDisconnect:
rdpRemoveClientConFromDev: removing clientCon 0x5617f289d860
guacd[191]: INFO:   Connection "$ccc33915-a25e-48fd-bcaa-711af54872d5" removed.
aptalca commented 1 year ago

Are you reverse proxying or accessing directly? What address are you using?

PriamX commented 1 year ago

I did have a reverse proxy set up on it (swag), however, I'm not using that to access it while trying to figure this out. I have port 8080 and 8081 published to the host and am using http://<hostip>:8080 from a Windows PC (using Chrome) on the same LAN. The host is Linux and I've also tried using Firefox on the host using http://localhost:8080 with the same result.

PriamX commented 1 year ago

Wait, my bad. http://localhost/calibre:8080 does get me into the xterm, trying your test...

That does work when I execute calibre from the xterm.

PriamX commented 1 year ago

Reconfirming, going back to s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c 'umask ${UMASK:-022} && /usr/bin/calibre $CLI_ARGS' in the /defaults/autostart file does NOT work. Testing with http://localhost/calibre:8080 (as I should have done originally), there's just a black dot on the left-hand side of the window.

Let me try going back to 6.4.0 like the OP did, because I tested that one using the wrong URL too.

aptalca commented 1 year ago

🤦 you set the subfolder var to /calibre/ so it's accessible at that baseurl

I'm going to go ahead and close this issue because it really went off track

Anyone who's having issues with the gui not being accessible try the following:

If none of those work, then open a new issue and completely fill out the issue template

PriamX commented 1 year ago

Confirmed, like the OP, 6.4.0 tag does work, the "lastest" tag does NOT. Since this is being closed, like the OP, I'll skip this version and try again in a later version.

Thank you for your help.

maxximux2000 commented 1 year ago

I was able to make it work using the docker run command at : https://github.com/linuxserver/docker-calibre/blob/master/README.md modified the variables and it's working using version 6.6.1.

I'm happy :)

Thanks

dangmai commented 1 year ago

For folks on Kubernetes, I'm pretty sure this has to do with the container runtime. When I switch my k3s installation from containerd to docker as the underlying runtime, the image works again. I'm still trying to find the root cause for it, but I'm suspecting that it has to do with how containerd handles seccomp policies.

brettinternet commented 1 year ago

Likewise I'm seeing issues with 6.6.1 on both arm64 and amd64 in my K3s cluster where I see logs the same as this https://github.com/linuxserver/docker-calibre/issues/104#issuecomment-1263800049 and nothing after custom-init] No custom services found, skipping.... I access my services behind a reverse proxy. However, I'm not sure that's relevant since the logs are not showing guacd even starting up.

I have added this option to the deployment container, however it had no effect. https://kubernetes.io/docs/tutorials/security/seccomp/

securityContext:
  seccompProfile:
    type: Unconfined

Like the others, I was able to get the container to work as expected when pointing to 6.4.0.

dangmai commented 1 year ago

So the root cause for this for folks running k3s is because of IPv6. s6 periodically polls 127.0.0.1 on port 3350 (see here) to check whether xrdp-sesman is up or not. However sesman only listens to the ipv6 interface, so that check fails and none of the services that depends on sesman gets to run (e.g. svc-xrdp, svc-web).

There is already a pending PR: https://github.com/linuxserver/docker-baseimage-rdesktop/pull/20/files to fix this issue, so when that is merged and this repo pulls in a new base image with that fix, calibre will start working again.

Iristyle commented 1 year ago

Also having issues on my Synology which is currently stuck at Docker engine 20.10.03. When I add seccomp:unconfined to my docker-compose.yml that at least allows the latest image to start, but there are a lot of errors in the container logs and the RDP session won't render in the browser.

If I pin back to 6.4.0 as mentioned in the thread, I don't have any issues. I haven't yet tried 6.5, 6.6, 6.7, etc.

aptalca commented 1 year ago

@dangmai apparently our sesman fix seems to have cause other issues. All rdesktop-web based images with that fix is taking 15-20 seconds to display the gui on browser connection. We're gonna try setting the sesman listen address to 0.0.0.0, which seems to fix the connection/load issues, but can you check that on k3s? I believe you just need to spin up a container, don't open the gui yet, exec into the container and edit /etc/xrdp/sesman.ini and change ;ListenAddress=127.0.0.1 to ListenAddress=0.0.0.0 (uncomment and set to 0.0.0.0). Then you can restart the container and see if it works

Thanks Scratch that, the issue happens with 0.0.0.0

BoKKeR commented 1 year ago

Neither does 6.4.0 or newer work for me

[2023-03-23 07:15:17] [Connection 1]  Closing connection with error:  Error: WS was inactive for too long
    at ClientConnection.checkActivity (/gclient/node_modules/guacamole-lite/lib/ClientConnection.js:154:24)
    at listOnTimeout (internal/timers.js:557:17)
    at processTimers (internal/timers.js:500:7)
[2023-03-23 07:15:17] [Connection 1]  Closing guacd connection
[2023-03-23 07:15:17] [Connection 1]  Client connection closed
guacd[258]: ERROR:      User is not responding.
guacd[258]: INFO:       User "@cacddc80-33b9-4b8d-a863-d0cca30c27fe" disconnected (0 users remain)
guacd[258]: INFO:       Last user of connection "$5fda43b4-b331-4e21-b213-f90e05a72a24" disconnected
guacd[258]: INFO:       Internal RDP client disconnected
guacd[220]: INFO:       Connection "$5fda43b4-b331-4e21-b213-f90e05a72a24" removed.
rdpClientConRecv: g_sck_recv failed(returned 0)
rdpClientConRecvMsg: error
rdpClientConCheck: rdpClientConGotData failed
rdpClientConDisconnect:
rdpRemoveClientConFromDev: removing clientCon 0x55e450ecb9c0
spiraleyes00 commented 1 year ago

I have this problem and found a workaround that can be done after each startup. My calibre container starts but shows with a black screen after login in the browser. That black screen only lets me use the on screen keyboard or attempt to load the GUI(fails) or open xterm.

Here's the quickest fix, but it has to be done after each startup. You can be on the latest version for this rather than 6.4.0. If someone has way to add it to compose, please share. I'm not familiar enough with this stuff.

docker exec -it calibre sh -c "apt-get update && apt-get install -y binutils && strip --remove-section=.note.ABI-tag /opt/calibre/lib/libQt6Core.so.6"

Now if you go back to the black screen, right click and start the calibre GUI, it will actually load.

I don't have full understanding of this issue, but it seems like the calibre container uses libQt6 which actually checks the kernel version of the container, which shows the kernel version of the docker host. If you're running docker on a rhel7 host it will refuse to start. The workaround just removes this check from libQt6. This is described here: https://unix.stackexchange.com/questions/700290/existing-so-file-cannot-be-loaded-even-though-it-exists-seems-to-depend-on-doc