Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Occasional back screen and no browser on Kubuntu with neko:google-chrome #462

Open
OnkelTem opened this issue Jan 5, 2025 · 5 comments
Open

Comments

@OnkelTem
Copy link

OnkelTem commented Jan 5, 2025

Every other time I get black screen without browser.

image

This is how I run neko:

#!/usr/bin/env bash

docker run --gpus all \
  -p 43271:8080 \
  -p 56000-56100:56000-56100/udp \
  -e NEKO_SCREEN=1920x1080@30 \
  -e NEKO_PASSWORD=... \
  -e NEKO_PASSWORD_ADMIN=... \
  -e NEKO_EPR=56000-56100 \
  -e NEKO_ICELITE=1 \
  -v $(pwd)/data:/path/to/neko/.config/google-chrome \
  --shm-size=4gb \
  --cap-add=SYS_ADMIN \
  m1k1o/neko:google-chrome

The only "solution" I found so far is to delete the browser profile and recreate the container (Which is not really a solution, because the point is to keep browser data across sessions)

@OnkelTem
Copy link
Author

OnkelTem commented Jan 5, 2025

Somehow removing the browser profile doesn't work anymore.

@m1k1o
Copy link
Owner

m1k1o commented Jan 5, 2025

There will be probably something relevant in the logs why is google chrome not starting.

@OnkelTem
Copy link
Author

OnkelTem commented Jan 6, 2025

Ok, I'll have a look. Logs are pretty verbose, I need to extract the part which is common for both failed and successful runnings.

@OnkelTem
Copy link
Author

This is happening again.

I receive this and google chrome won't start:

INFO gave up: google-chrome entered FATAL state, too many start retries too quickly

My full script:

docker run --gpus all \
  -p 43271:8080 \
  -p 56000-56100:56000-56100/udp \
  -e NEKO_SCREEN=1920x1080@30 \
  -e NEKO_PASSWORD=neko \
  -e NEKO_PASSWORD_ADMIN=admin \
  -e NEKO_EPR=56000-56100 \
  -e NEKO_ICELITE=1 \
  -v $(pwd)/data:/home/neko/.config/google-chrome \
  --shm-size=4gb \
  --cap-add=SYS_ADMIN \
  m1k1o/neko:google-chrome

The output:

2025-02-12 20:44:04,396 INFO Included extra file "/etc/neko/supervisord/google-chrome.conf" during parsing
2025-02-12 20:44:04,396 INFO Set uid to user 0 succeeded
2025-02-12 20:44:04,398 INFO RPC interface 'supervisor' initialized
2025-02-12 20:44:04,398 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2025-02-12 20:44:04,398 INFO supervisord started with pid 1
2025-02-12 20:44:05,401 INFO spawned: 'dbus' with pid 7
2025-02-12 20:44:05,402 INFO spawned: 'openbox' with pid 8
2025-02-12 20:44:05,403 INFO spawned: 'pulseaudio' with pid 9
2025-02-12 20:44:05,404 INFO spawned: 'x-server' with pid 11
2025-02-12 20:44:05,406 INFO spawned: 'google-chrome' with pid 13
2025-02-12 20:44:05,407 INFO spawned: 'neko' with pid 14
2025-02-12 20:44:05,408 DEBG 'dbus' stdout output:
12

2025-02-12 20:44:05,410 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operation not permitted
I: [pulseaudio] main.c: setrlimit(RLIMIT_RTPRIO, (9, 9)) failed: Operation not permitted

2025-02-12 20:44:05,411 DEBG 'x-server' stdout output:
_XSERVTrans
2025-02-12 20:44:05,411 DEBG 'x-server' stdout output:
mkdir: Owner of /tmp/.X11-unix should be set to root

2025-02-12 20:44:05,411 DEBG 'x-server' stdout output:

X.Org X Server 1.20.11
X Protocol Version 11, Revision 0
Build Operating System: linux Debian

2025-02-12 20:44:05,411 DEBG 'x-server' stdout output:
Current Operating System: Linux cc45f2c03395 6.8.0-51-generic #52~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Mon Dec  9 15:00:52 UTC 2 x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.8.0-51-generic root=UUID=7c4bab77-affe-4496-9474-d2ca26a289ae ro
Build Date: 27 October 2024  11:03:02AM
xorg-server 2:1.20.11-1+deb11u14 (https://www.debian.org/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.

2025-02-12 20:44:05,411 DEBG 'x-server' stdout output:
(==) Log file: "/home/neko/.local/share/xorg/Xorg.99.0.log", Time: Wed Feb 12 20:44:05 2025

2025-02-12 20:44:05,411 DEBG 'x-server' stdout output:
(++) Using config file: "/etc/neko/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"

2025-02-12 20:44:05,413 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] core-util.c: Failed to acquire high-priority scheduling: No such file or directory
I: [pulseaudio] main.c: This is PulseAudio 14.2

2025-02-12 20:44:05,413 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] main.c: Page size is 4096 bytes

2025-02-12 20:44:05,413 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] main.c: Machine ID is 18814858c0ac0f2bb3fc84e567aa179b.

2025-02-12 20:44:05,413 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] main.c: Using runtime directory /tmp/runtime-neko/pulse.

2025-02-12 20:44:05,413 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] main.c: Using state directory /home/neko/.config/pulse.
I: [pulseaudio] main.c: Using modules directory /usr/lib/pulse-14.2/modules.
I: [pulseaudio] main.c: Running in system mode: no

2025-02-12 20:44:05,413 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] main.c: System supports high resolution timers

2025-02-12 20:44:05,413 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] cpu-x86.c: CPU flags: CMOV MMX SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 MMXEXT 
I: [pulseaudio] svolume_mmx.c: Initialising MMX optimized volume functions.
I: [pulseaudio] remap_mmx.c: Initialising MMX optimized remappers.
I: [pulseaudio] svolume_sse.c: Initialising SSE2 optimized volume functions.
I: [pulseaudio] remap_sse.c: Initialising SSE2 optimized remappers.

2025-02-12 20:44:05,413 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] sconv_sse.c: Initialising SSE2 optimized conversions.
I: [pulseaudio] svolume_orc.c: Initialising ORC optimized volume functions.

2025-02-12 20:44:05,414 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] sink.c: Created sink 0 "audio_output" with sample spec s16le 2ch 44100Hz and channel map front-left,front-right
I: [pulseaudio] sink.c:     device.description = "Virtual Audio Output"
I: [pulseaudio] sink.c:     device.class = "abstract"
I: [pulseaudio] sink.c:     device.icon_name = "audio-card"

2025-02-12 20:44:05,414 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] source.c: Created source 0 "audio_output.monitor" with sample spec s16le 2ch 44100Hz and channel map front-left,front-right
I: [pulseaudio] source.c:     device.description = "Monitor of Virtual Audio Output"
I: [pulseaudio] source.c:     device.class = "monitor"
I: [pulseaudio] source.c:     device.icon_name = "audio-input-microphone"

2025-02-12 20:44:05,415 DEBG 'pulseaudio' stdout output:
I: [null-sink] util.c: Failed to acquire real-time scheduling: No such file or directory

2025-02-12 20:44:05,415 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] core.c: default_source: (unset) -> audio_output.monitor
I: [pulseaudio] core.c: default_sink: (unset) -> audio_output
I: [pulseaudio] module.c: Loaded "module-null-sink" (index: #0; argument: "sink_name=audio_output sink_properties=device.description="Virtual\ Audio\ Output"").

2025-02-12 20:44:05,415 DEBG 'pulseaudio' stdout output:
W: [pulseaudio] authkey.c: Failed to open cookie file '/home/neko/.config/pulse/cookie': No such file or directory
W: [pulseaudio] authkey.c: Failed to load authentication key '/home/neko/.config/pulse/cookie': No such file or directory

2025-02-12 20:44:05,415 DEBG 'pulseaudio' stdout output:
W: [pulseaudio] authkey.c: Failed to open cookie file '/home/neko/.pulse-cookie': No such file or directory
W: [pulseaudio] authkey.c: Failed to load authentication key '/home/neko/.pulse-cookie': No such file or directory

2025-02-12 20:44:05,416 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] module.c: Loaded "module-native-protocol-unix" (index: #1; argument: "socket=/tmp/pulseaudio.socket auth-anonymous=1").

2025-02-12 20:44:05,416 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] module.c: Loaded "module-always-sink" (index: #2; argument: "").

2025-02-12 20:44:05,436 DEBG 'google-chrome' stdout output:
chrome_crashpad_handler: --database is required
Try 'chrome_crashpad_handler --help' for more information.

2025-02-12 20:44:05,486 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] main.c: Daemon startup complete.

2025-02-12 20:44:05,486 INFO reaped unknown pid 30 (exit status 1)
2025-02-12 20:44:05,486 DEBG received SIGCHLD indicating a child quit
2025-02-12 20:44:05,567 DEBG 'neko' stdout output:
 
    _   __     __
   / | / /__  / /______   \    /\
  /  |/ / _ \/ //_/ __ \   )  ( ')
 / /|  /  __/ ,< / /_/ /  (  /  )
/_/ |_/\___/_/|_|\____/    \(__)|
  nurdism/m1k1o server @

2025-02-12 20:44:05,567 DEBG 'neko' stdout output:
8:44PM WRN preflight complete without config file config= debug=false logging=false

2025-02-12 20:44:05,626 DEBG fd 19 closed, stopped monitoring <POutputDispatcher at 134270962909392 for <Subprocess at 134270962909344 with name google-chrome in state STARTING> (stdout)>
2025-02-12 20:44:05,626 INFO exited: google-chrome (terminated by SIGTRAP (core dumped); not expected)
2025-02-12 20:44:05,626 INFO reaped unknown pid 24 (exit status 0)
2025-02-12 20:44:05,626 INFO reaped unknown pid 25 (exit status 0)
2025-02-12 20:44:05,626 DEBG received SIGCHLD indicating a child quit
2025-02-12 20:44:06,627 INFO success: dbus entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2025-02-12 20:44:06,627 INFO success: openbox entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2025-02-12 20:44:06,627 INFO success: pulseaudio entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2025-02-12 20:44:06,627 INFO success: x-server entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2025-02-12 20:44:06,629 INFO spawned: 'google-chrome' with pid 102
2025-02-12 20:44:06,630 INFO success: neko entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2025-02-12 20:44:06,657 DEBG 'google-chrome' stdout output:
chrome_crashpad_handler: --database is required
Try 'chrome_crashpad_handler --help' for more information.

2025-02-12 20:44:06,855 DEBG fd 19 closed, stopped monitoring <POutputDispatcher at 134270962415456 for <Subprocess at 134270962909344 with name google-chrome in state STARTING> (stdout)>
2025-02-12 20:44:06,855 INFO exited: google-chrome (terminated by SIGTRAP (core dumped); not expected)
2025-02-12 20:44:06,855 INFO reaped unknown pid 109 (exit status 1)
2025-02-12 20:44:06,855 INFO reaped unknown pid 106 (exit status 0)
2025-02-12 20:44:06,855 INFO reaped unknown pid 107 (exit status 0)
2025-02-12 20:44:06,855 DEBG received SIGCHLD indicating a child quit
2025-02-12 20:44:08,859 INFO spawned: 'google-chrome' with pid 110
2025-02-12 20:44:08,888 DEBG 'google-chrome' stdout output:
chrome_crashpad_handler: --database is required
Try 'chrome_crashpad_handler --help' for more information.

2025-02-12 20:44:08,888 DEBG received SIGCHLD indicating a child quit
2025-02-12 20:44:08,888 DEBG 'google-chrome' stdout output:
[110:110:0212/204408.888686:ERROR:socket.cc(120)] recvmsg: Connection reset by peer (104)

2025-02-12 20:44:08,888 INFO reaped unknown pid 117 (exit status 1)
2025-02-12 20:44:09,081 DEBG fd 19 closed, stopped monitoring <POutputDispatcher at 134270962415072 for <Subprocess at 134270962909344 with name google-chrome in state STARTING> (stdout)>
2025-02-12 20:44:09,081 INFO exited: google-chrome (terminated by SIGTRAP (core dumped); not expected)
2025-02-12 20:44:09,081 INFO reaped unknown pid 114 (exit status 0)
2025-02-12 20:44:09,081 INFO reaped unknown pid 115 (exit status 0)
2025-02-12 20:44:09,081 DEBG received SIGCHLD indicating a child quit
2025-02-12 20:44:10,717 DEBG 'neko' stdout output:
8:44PM INF starting neko server service=neko

2025-02-12 20:44:10,718 DEBG 'neko' stdout output:
8:44PM INF setting initial screen size module=desktop screen_size=1920x1080@30

2025-02-12 20:44:10,718 DEBG 'neko' stdout output:
8:44PM INF webrtc starting ephemeral_port_range=56000-56100 ice_lite=true ice_servers="[{URLs:[stun:stun.l.google.com:19302] Username: Credential:<nil> CredentialType:password}]" module=webrtc nat_ips=19x.xxx.xxx.xxx

2025-02-12 20:44:10,719 DEBG 'neko' stdout output:
8:44PM WRN http listening on :8080 module=http
8:44PM INF neko ready service=neko

2025-02-12 20:44:12,723 INFO spawned: 'google-chrome' with pid 122
2025-02-12 20:44:12,751 DEBG 'google-chrome' stdout output:
chrome_crashpad_handler: --database is required
Try 'chrome_crashpad_handler --help' for more information.

2025-02-12 20:44:12,940 DEBG fd 19 closed, stopped monitoring <POutputDispatcher at 134270962415120 for <Subprocess at 134270962909344 with name google-chrome in state STARTING> (stdout)>
2025-02-12 20:44:12,940 INFO exited: google-chrome (terminated by SIGTRAP (core dumped); not expected)
2025-02-12 20:44:12,941 INFO reaped unknown pid 129 (exit status 1)
2025-02-12 20:44:12,941 INFO reaped unknown pid 126 (exit status 0)
2025-02-12 20:44:12,941 INFO reaped unknown pid 127 (exit status 0)
2025-02-12 20:44:12,941 DEBG received SIGCHLD indicating a child quit
2025-02-12 20:44:13,942 INFO gave up: google-chrome entered FATAL state, too many start retries too quickly

@m1k1o
Copy link
Owner

m1k1o commented Feb 12, 2025

Can you make sure that the profile is owned correctly by the user neko:neko inside the container?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants