m1k1o / neko

A self hosted virtual browser that runs in docker and uses WebRTC.
https://neko.m1k1o.net/
Apache License 2.0
5.96k stars 449 forks source link

Behind VPN and port 8080 already reserved #215

Closed alanmilinovic closed 1 year ago

alanmilinovic commented 1 year ago

Hi I have a VPN connection running on my host server and my 8080 is taken already by some other container.

First question is how to change port as in container log I see always port 8080?

Second question is what to put for IP address in compose config file as I have VPN public IP address on the host and would like to use neko locally only?

So far I tried to change 8080 in compose file as well as tried to use local ip of host server but no luck.

version: "3.4"
services:
  neko:
    image: "m1k1o/neko:chromium"
    restart: "unless-stopped"
    shm_size: "2gb"
    ports:
      - "4321:4321"
      - "52000-52100:52000-52100/udp"
    cap_add:
      - SYS_ADMIN
    environment:
      NEKO_SCREEN: '1920x1080@30'
      NEKO_PASSWORD: neko
      NEKO_PASSWORD_ADMIN: admin
      NEKO_EPR: 52000-52100
      NEKO_NAT1TO1: 192.168.188.203

This is my log file:

2022-11-06 18:39:13,936 INFO Included extra file "/etc/neko/supervisord/chromium.conf" during parsing
2022-11-06 18:39:13,937 INFO Set uid to user 0 succeeded
2022-11-06 18:39:13,938 INFO supervisord started with pid 1
2022-11-06 18:39:14,944 INFO spawned: 'rendergroup-init' with pid 7
2022-11-06 18:39:14,948 INFO spawned: 'dbus' with pid 8
2022-11-06 18:39:14,951 INFO spawned: 'openbox' with pid 9
2022-11-06 18:39:14,954 INFO spawned: 'pulseaudio' with pid 10
2022-11-06 18:39:14,956 INFO spawned: 'x-server' with pid 12
2022-11-06 18:39:14,960 INFO spawned: 'chromium' with pid 14
2022-11-06 18:39:14,963 INFO spawned: 'neko' with pid 15
2022-11-06 18:39:14,966 DEBG fd 6 closed, stopped monitoring <POutputDispatcher at 139976898874432 for <Subprocess at 139976898874384 with name rendergroup-init in state STARTING> (stdout)>
2022-11-06 18:39:14,966 INFO exited: rendergroup-init (exit status 0; expected)
2022-11-06 18:39:14,967 DEBG received SIGCHLD indicating a child quit
2022-11-06 18:39:14,967 DEBG 'dbus' stdout output:
13
2022-11-06 18:39:14,968 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
2022-11-06 18:39:14,971 DEBG 'x-server' stdout output:
_XSERVTransmkdir: Owner of /tmp/.X11-unix should be set to root
2022-11-06 18:39:14,975 DEBG 'x-server' stdout output:
X.Org X Server 1.20.11
X Protocol Version 11, Revision 0
Build Operating System: linux Debian
Current Operating System: Linux 83839b15e3a2 5.6.0-2-amd64 #1 SMP Debian 5.6.14-2~mx19+1 (2020-06-14) x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.6.0-2-amd64 root=UUID=13a3c98b-f66e-4f1f-8b11-6ceaa73392a0 ro systemd.unified_cgroup_hierarchy=false quiet splash mce=nobootlog intel_pstate=disable init=/lib/systemd/systemd
2022-11-06 18:39:14,977 DEBG 'x-server' stdout output:
Build Date: 05 August 2022  08:00:36AM
xorg-server 2:1.20.11-1+deb11u2 (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.


2022-11-06 18:39:14,977 DEBG 'x-server' stdout output:
(--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/home/neko/.local/share/xorg/Xorg.99.0.log", Time: Sun Nov  6 18:39:14 2022
2022-11-06 18:39:14,978 DEBG 'x-server' stdout output:
(++) Using config file: "/etc/neko/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
2022-11-06 18:39:14,985 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
I: [pulseaudio] main.c: Page size is 4096 bytes
I: [pulseaudio] main.c: Machine ID is 9ae29c298b83274b4e9b7108635f4830.
I: [pulseaudio] main.c: Using runtime directory /home/neko/.config/pulse/9ae29c298b83274b4e9b7108635f4830-runtime.
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
I: [pulseaudio] main.c: System supports high resolution timers
I: [pulseaudio] cpu-x86.c: CPU flags: CMOV MMX SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 
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.
I: [pulseaudio] sconv_sse.c: Initialising SSE2 optimized conversions.
I: [pulseaudio] svolume_orc.c: Initialising ORC optimized volume functions.
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
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
I: [pulseaudio] module.c: Loaded "module-native-protocol-unix" (index: #0; argument: "socket=/tmp/pulseaudio.socket auth-anonymous=1").
I: [pulseaudio] sink.c: Created sink 0 "auto_null" with sample spec s16le 2ch 44100Hz and channel map front-left,front-right
I: [pulseaudio] sink.c:     device.description = "Dummy Output"
I: [pulseaudio] sink.c:     device.class = "abstract"
I: [pulseaudio] sink.c:     device.icon_name = "audio-card"
I: [pulseaudio] source.c: Created source 0 "auto_null.monitor" with sample spec s16le 2ch 44100Hz and channel map front-left,front-right
I: [pulseaudio] source.c:     device.description = "Monitor of Dummy Output"
I: [pulseaudio] source.c:     device.class = "monitor"
I: [pulseaudio] source.c:     device.icon_name = "audio-input-microphone"
2022-11-06 18:39:14,995 DEBG 'pulseaudio' stdout output:
I: [null-sink] util.c: Failed to acquire real-time scheduling: No such file or directory
2022-11-06 18:39:14,996 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] core.c: default_source: (unset) -> auto_null.monitor
I: [pulseaudio] core.c: default_sink: (unset) -> auto_null
I: [pulseaudio] module.c: Loaded "module-null-sink" (index: #2; argument: "sink_name=auto_null sink_properties='device.description="Dummy Output"'").
2022-11-06 18:39:14,996 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] module.c: Loaded "module-always-sink" (index: #1; argument: "").
2022-11-06 18:39:15,096 DEBG 'pulseaudio' stdout output:
I: [pulseaudio] main.c: Daemon startup complete.
2022-11-06 18:39:15,151 DEBG 'neko' stdout output:
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
2022-11-06 18:39:15,322 DEBG 'neko' stdout output:

    _   __     __
   / | / /__  / /______   \    /\
  /  |/ / _ \/ //_/ __ \   )  ( ')
 / /|  /  __/ ,< / /_/ /  (  /  )
/_/ |_/\___/_/|_|\____/    \(__)|
 nurdism/m1k1o server v2.6.0 dev
2022-11-06 18:39:15,324 DEBG 'neko' stdout output:
6:39PM WRN preflight complete without config file config= debug=false logging=false
2022-11-06 18:39:15,325 DEBG 'neko' stdout output:
6:39PM INF starting neko server service=neko
2022-11-06 18:39:15,328 DEBG 'neko' stdout output:
6:39PM INF setting initial screen size module=desktop screen_size=1920x1080@30
2022-11-06 18:39:15,328 DEBG 'neko' stdout output:
6:39PM INF webrtc starting ephemeral_port_range=52000-52100 ice_lite=false ice_servers="[{URLs:[stun:stun.l.google.com:19302] Username: Credential:<nil> CredentialType:password}]" module=webrtc nat_ips=192.168.188.203
2022-11-06 18:39:15,329 DEBG 'neko' stdout output:
6:39PM WRN http listening on :8080 module=http
6:39PM INF neko ready service=neko
2022-11-06 18:39:15,353 DEBG 'chromium' stdout output:
[14:113:1106/183915.353145:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[14:113:1106/183915.353240:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2022-11-06 18:39:15,362 DEBG 'chromium' stdout output:
[122:122:1106/183915.362645:ERROR:gpu_init.cc(537)] Passthrough is not supported, GL is disabled, ANGLE is 
2022-11-06 18:39:15,368 DEBG 'chromium' stdout output:
[14:113:1106/183915.368653:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[14:113:1106/183915.368680:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2022-11-06 18:39:15,421 DEBG 'chromium' stdout output:
[14:113:1106/183915.421244:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[14:113:1106/183915.421267:ERROR:bus.cc(399)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
2022-11-06 18:39:15,454 DEBG 'chromium' stdout output:
[14:176:1106/183915.454083:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
2022-11-06 18:39:15,454 DEBG 'chromium' stdout output:
[14:176:1106/183915.454514:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.UPower.GetDisplayDevice: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
2022-11-06 18:39:15,454 DEBG 'chromium' stdout output:
[14:176:1106/183915.454860:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.UPower.EnumerateDevices: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
2022-11-06 18:39:16,456 INFO success: dbus entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2022-11-06 18:39:16,456 INFO success: openbox entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2022-11-06 18:39:16,457 INFO success: pulseaudio entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2022-11-06 18:39:16,458 INFO success: x-server entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2022-11-06 18:39:16,458 INFO success: chromium entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2022-11-06 18:39:16,459 INFO success: neko entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)

Thank you.

m1k1o commented 1 year ago

To access it only from LAN you put local IP of neko server to NEKO_NAT1TO1 what seems to be correct from your logs 192.168.188.203.

To modify ports please refer to the documentation. So instead of "4321:4321" use "4321:8080".

alanmilinovic commented 1 year ago

Great, it is working now. Many tnx!