docker container nicht als root ausführen für sinusbot

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.803
Punkte für Reaktionen
3.761
Punkte
468
Na komm, so schwer ist das nicht. Benutzer "sinusbot" anlegen, UID herausfinden, und eintragen (s. #17/#18)
Edit: Vermutlich fehlen da aber noch ein paar Volumes (s. #6).
Hint: /opt/sinusbot aus der Anleitung gedanklich durch /volume1/docker/sinusbot ersetzen
 
Zuletzt bearbeitet:

xCleaner15

Benutzer
Mitglied seit
22. Mrz 2024
Beiträge
18
Punkte für Reaktionen
0
Punkte
7
hier mal das kurze Video jetzt was ich bereits gemacht habe und was halt immer noch das Problem ist vielleicht kann man anhand des Videos den Fehler jetzt direkt herausfinden wo ich zu blöd dafür war

das Video hat allerdings eine vorhandene Stimme und er habe versucht die Adressen mit einem Bild zu verdecken
https://youtu.be/zQj8JC9SYiw
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.803
Punkte für Reaktionen
3.761
Punkte
468
Sorry, dein Video ist mir zu verwirrend und akustisch kaum verständlich.
Hast du dem neuen Benutzer mit der UID 1035 auch auf die Volumes unter /volume1/docker/sinusbot Berechtigungen erteilt?
 

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.519
Punkte für Reaktionen
404
Punkte
103
Es wäre soviel nachvollziehbarer für uns, wenn du jedes Mal die Konfiguration mit uns teilen würdest, und vor allem auch Logs teilen würdest, dann hätten wir eine Chance zu verstehen was los ist.

Ich muss gesehen, dass ich nicht verstehen kann wie uns das bisherige "ich hab jetzt was probiert -> geht nicht" in die Lage versetzen soll Dir helfen zu können.
 
  • Like
Reaktionen: ctrlaltdelete

xCleaner15

Benutzer
Mitglied seit
22. Mrz 2024
Beiträge
18
Punkte für Reaktionen
0
Punkte
7
die Berechtigung hat der Benutzer in diesem Ordner lesen und schreiben zu dürfen

mehr als das hier kommt aber nicht kann auch nicht die Seite per IP-Adresse oder den Nickname aufrufen natürlich mit dem Port

1711486080711.png
 

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.519
Punkte für Reaktionen
404
Punkte
103
Jetzt bist Du schon Mal auf EINEN Teil meiner letzten Antwort eingegangen: Du hast die Logs geteilt.
Jetzt wissen wir, dass das eigentliche Problem mit den fehlenden UID und GID Variablen gelöst ist.

Was ist mit der Container Konfiguration? Wie sehen die gemappten Ports aus.
 

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.519
Punkte für Reaktionen
404
Punkte
103
Die Volumes wären auch interessant.

Irgendwas stimmt mit deinem Container nicht, nach "Starting SinusBot...." sollte ein Header kommen.

Bei mir läuft es ohne Problem mit nur zwei Befehlen:
Code:
mkdir -p /volume1/docker/sinusbot/{scripts,data}

docker run -d -p 8087:8087 \
-v /volume1/docker/sinusbot/scripts:/sinusbot/scripts \
-v /volume1/docker/sinusbot/data:/sinusbot/data \
-e UID=1026 \
-e GID=100 \
--name sinusbot \
sinusbot/docker

Ausgabe:
Code:
...
User ID: 1026
Change file owner...
Group ID: 100
Change file group...
Drop privileges...
Clearing yt-dlp cache...
Deprecated Feature: Support for Python version 3.7 has been deprecated. See  https://github.com/yt-dlp/yt-dlp/issues/7803  for details.
                    You may stop receiving updates on this version at any time! Please update to Python 3.8 or above
Removing cache dir /root/.cache/yt-dlp ..
Starting SinusBot...
PID: 23

 ___ ___ _  _ _   _ ___ ___  ___ _____
/ __|_ _| \| | | | / __| _ )/ _ \_   _|
\__ \| || .` | |_| \__ \ _ \ (_) || |
|___/___|_|\_|\___/|___/___/\___/ |_|

Version: 1.0.2
(C) 2013-2022 Michael Friese. All rights reserved.

2024/03/26 21:27:00 ce80e3b9          INFO   Loading instances
...
 

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.519
Punkte für Reaktionen
404
Punkte
103
Sieht alles richtig aus. Das die Webstation zum Erreichen des Container-Ports statt einem Portmapping verwendet wird, sollte nicht der Grund sein, warum der Container den Prozess nicht startet.

Kannst Du in einem SSH Terminal mal folgendes eingeben und die Ausgabe mit uns teilen:
Code:
stat /volume1/docker/sinusbot/data -c '%a %u:%g'
stat /volume1/docker/sinusbot/scripts -c '%a %u:%g'
synoacltool -get /volume1/docker/sinusbot/data
synoacltool -get /volume1/docker/sinusbot/scripts
 

xCleaner15

Benutzer
Mitglied seit
22. Mrz 2024
Beiträge
18
Punkte für Reaktionen
0
Punkte
7
das ist das einzige was bei mir als Antwort kommt wenn ich diesen Befehl in der Konsole eingebe.

xCleaner15@xCleaner15-DSM:~$ docker run -d -p 8087:8087 \
> -v /volume1/docker/sinusbot/scripts:/sinusbot/scripts \
> -v /volume1/docker/sinusbot/data:/sinusbot/data \
> -e UID=1035 \
> -e GID=100 \
> --name sinusbot \
> sinusbot/docker
docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/create?name=sinusbot": dial unix /var/run/docker.sock: connect: permission denied.
See 'docker run --help'.
xCleaner15@xCleaner15-DSM:~$
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.803
Punkte für Reaktionen
3.761
Punkte
468
Probier's mal als root (sudo -i) ;)
 

xCleaner15

Benutzer
Mitglied seit
22. Mrz 2024
Beiträge
18
Punkte für Reaktionen
0
Punkte
7
das hier kommt wenn ich das in der Konsole eingeben möchte es wird aber jeweils immer nur ein neuer docker-container angelegt der dann auch noch eine Fehlermeldung rausgibt

1711732095057.png

1711732193538.png
1711732211612.png


habe nun mittlerweile einfach mal mein anderes System wieder aufgebaut und eingestellt dort funktioniert es deutlich einfacher dort musste ich nur das Tablet einmal runterladen und konnte es direkt ausführen,

das andere System ist allerdings kein DSM sondern
unraid 6.12.8



1711732564681.png

und dort funktioniert es wenigstens einwandfrei ohne dass man irgendwas daran am System verändern muss dort muss man aber auch dazu sagen für dieses System gibt es deutlich mehr Funktionen die von der Community zur Verfügung gestellt werden es mag zwar wohl sein das mit DSM vereinzelte Sachen anders dafür einfacher sind allerdings habe ich es lieber einfach anstatt unnötig kompliziert weil ich habe bis jetzt immer irgendwelche Probleme gehabt wenn ich irgendwas ausprobieren möchte dass das das was ich ausprobieren möchte mit diesem System wo ich nutzen möchte nur Gefummel ist.

klar hat das dsm-systeme vor und nachteile allerdings ist das andere System einsteigerfreundlicher was stalkercontainer betrifft klar man kann immer einen falschen docker-container erwischen der nicht funktioniert direkt auf Anhieb aber dieser wird in diesem System sondern aber dann auch nicht angezeigt in diesem anderen System dort gibt es dann nur geprüfte docker-container die definitiv funktionieren es sei denn man hackt macht oben ein Gewissen Haken rein dann sieht man alle die auch nicht kompatibel sein.

weiß aber auch nicht ob es jetzt an meinem Gerät genau liegt weil ich habe kein DS Modell sondern einen RS Modell
 

Anhänge

  • 1711732540395.png
    1711732540395.png
    118 KB · Aufrufe: 9

ThreeLeftArms

Benutzer
Mitglied seit
15. Dez 2022
Beiträge
1
Punkte für Reaktionen
2
Punkte
3
Moin,

bin mal dem Vorschlag von haydibe [https://www.synology-forum.de/threa...-ausfuehren-fuer-sinusbot.132796/post-1157893] gefolgt. Auf einer ds920 ohne Root-Privilegien via ssh. Den Sinusbot-Ordner und die Unterverzeichnisse auch mit meinem normalen User angelegt.

Code:
docker run -d -p 8087:8087 \
-v /volume1/docker/sinusbot/scripts:/sinusbot/scripts \
-v /volume1/docker/sinusbot/data:/sinusbot/data \
-e UID=1026 \
-e GID=100 \
--name sinusbot \
sinusbot/docker

Und der Container startet ohne Probleme. Anbei die Logs:

Code:
Linux 4.4.302+ x86_64 GNU/Linux

Sun 31 Mar 2024 07:26:03 PM UTC

Copied default scripts

Updating yt-dlp...

Available version: stable@2024.03.10, Current version: stable@2023.03.04

Current Build Hash: 91cad9f121c1f6f0a81b747415c46ecba0ff331ed38cc6433040b4ac7b6e15ca

Updating to stable@2023.11.16 ...

Updated yt-dlp to stable@2023.11.16

2023.11.16

User ID: 1026

Change file owner...

Group ID: 100

Change file group...

Drop privileges...

Clearing yt-dlp cache...

Deprecated Feature: Support for Python version 3.7 has been deprecated. See  https://github.com/yt-dlp/yt-dlp/issues/7803  for details.

                    You may stop receiving updates on this version at any time! Please update to Python 3.8 or above

Removing cache dir /root/.cache/yt-dlp ..

Starting SinusBot...

PID: 26

 ___ ___ _  _ _   _ ___ ___  ___ _____

/ __|_ _| \| | | | / __| _ )/ _ \_   _|

\__ \| || .` | |_| \__ \ _ \ (_) || | 

|___/___|_|\_|\___/|___/___/\___/ |_| 

Version: 1.0.2

(C) 2013-2022 Michael Friese. All rights reserved.

-------------------------------------------------------------------------------

Generating new bot instance with account 'admin' and password 'sAMT3X9S'

PLEASE MAKE SURE TO CHANGE THE PASSWORD DIRECTLY AFTER YOUR FIRST LOGIN!!!

-------------------------------------------------------------------------------

2024/03/31 19:26:12 Updating database to v1... 0

2024/03/31 19:26:12 Updating database to v2... 1

2024/03/31 19:26:13 Updating database to v3... 2

2024/03/31 19:26:13 Updating database to v4... 3

2024/03/31 19:26:13 Updating database to v5... 4

2024/03/31 19:26:13 Updating database to v6... 5

2024/03/31 19:26:14 Updating database to v7... 6

2024/03/31 19:26:14 Updating database to v8... 7

2024/03/31 19:26:14 3952e787          INFO   Loading instances

2024/03/31 19:26:14 3952e787          INFO   Creating default instance

2024/03/31 19:26:15 3952e787 87a23cea INFO   Starting instance ts3server://127.0.0.1?port=9987&nickname=SinusBot&password=&channel=&channelpassword=

2024/03/31 19:26:15 3952e787 87a23cea INFO   script command loaded

2024/03/31 19:26:15 3952e787          INFO   Promoting instance to main instance

2024/03/31 19:26:15 3952e787 87a23cea PLUGIN [                :113:12] Loaded SinusBot Commands v1.1.2 by Jonas Bögle (@irgendwr).

2024/03/31 19:26:15 3952e787 87a23cea PLUGIN [                :114:12] SinusBot v1.0.2 on linux

2024/03/31 19:26:15 3952e787 87a23cea INFO   script sinusbot-commands loaded

2024/03/31 19:26:15 3952e787          INFO   Added new user admin

2024/03/31 19:26:15 [GENERAL/FFMPEG ] INFO   FFmpeg/avcodec v3876196; license: LGPL version 2.1 or later; 634 codecs

2024/03/31 19:26:15 [GENERAL/FFMPEG ] INFO   FFmpeg/avformat v3873636; license: LGPL version 2.1 or later; 334 formats

2024/03/31 19:26:15 [GENERAL/YTDL   ] INFO   youtube-dl checking...

2024/03/31 19:26:16 X [MAIN] New connection

2024/03/31 19:26:16 [GENERAL/YTDL   ] INFO   youtube-dl version compatible, support enabled

2024/03/31 19:26:16 [GENERAL/!!!!!!!] NOTICE You may now configure and launch the bots from the webinterface. http://0.0.0.0:8087

2024/03/31 19:26:16 [GENERAL/RADIO  ] INFO   Could not find RadioStation-Data (or outdated), updating...

2024/03/31 19:26:17 X [MAIN] New connection

2024/03/31 19:26:17 X [MAIN] New connection

2024/03/31 19:26:18 [GENERAL/RADIO  ] INFO   RadioStation data loaded

2024/03/31 19:26:18 [GENERAL/RADIO  ] INFO   Imported radio stations

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |              |   |TeamSpeak Client 3.5.6 (2020-11-25 13:53:42)

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |              |   |SystemInformation: Linux 4.4.302+ #69057 SMP Mon Nov 13 14:19:30 CST 2023 x86_64 Binary: 64bit

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |              |   |Using hardware aes

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |ERROR   |SoundBckndIntf|   |libpulse.so.0: cannot open shared object file: No such file or directory

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |ClientUI      |   |Unable to create an Open GL context.

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |ERROR   |RevocationListCache|   |Failed to import revocation list from cache

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |              |   |successfully downloaded revocation list for accounting

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |              |   |successfully downloaded revocation list for myteamspeak id

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |              |   |*** Time [ICONMANGER]: 183

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |Addons        |   |Checking for addon updates...

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |Plugins       |   |Loading plugin: libsoundbot_plugin.so

2024/03/31 19:26:20 3952e787 87a23cea WARN   Could not request shutdown. Please make sure that the plugin is installed correctly; HTTP returned an error: Error; Code: 500; Message: Error

2024/03/31 19:26:20 3952e787 87a23cea WARN   Could not send config: HTTP returned an error: Error; Code: 500; Message: Error

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |Addon         |   |Not available for this platform.

2024/03/31 19:26:20 3952e787 87a23cea INFO   TS |INFO    |SyncImpl      |   |Creating default config in local storage

2024/03/31 19:26:21 3952e787 87a23cea INFO   TSClient quit.

Danach ist der Container unter Port 8087 erreichbar.

Grüße
ThreeLeftArms
 

xCleaner15

Benutzer
Mitglied seit
22. Mrz 2024
Beiträge
18
Punkte für Reaktionen
0
Punkte
7
ich habe das ganze nun etwas mal detaillierter überprüft es liegt an meinem allgemeinen Netzwerk hier ich kann lokale DNS nicht nutzen ich muss mit IPs arbeiten das kann aber DSM Docker nicht zumindestens habe ich diese Einstellung nicht dafür gefunden so dass ich jetzt einem docker-container eine feste IP-Adresse zuweisen kann oder eine eigene dies funktioniert allerdings meines Wissens nicht so einfach habe wie gesagt ein anderes System ausprobiert dieses arbeitet aber ausschließlich nur mit IP-Adressen dort kann ich alle docker-container ohne Probleme ausführen und erreichen dies habe ich sondern herausgefunden dass dies an meinem Netzwerk liegt da ich bei einem Kollege von mir das ganze System ohne Probleme ausführen konnte und starten ohne das ganze mit dem Rechten zu setzen.

weil ich hatte das ganze schon mal dass ich mir einen docker-container für die Synchronisierung von Mega Cloud zum laufen kriegen wollte allerdings nicht der offizielle docker-container weil der ist scheiße sondern einen der extra gebaut wurde mit einer GUI dort konnte ich kurzen Zeitraum diesen Docker Container über das Web aufrufen dieses ging aber lediglich nur maximal zwei Tage und danach konnte ich diesen nicht mehr aufrufen und dieser Docker-container ist danach nicht mehr gestartet habe aber natürlich keine Änderung durchgeführt
 

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.519
Punkte für Reaktionen
404
Punkte
103
Kannst Du Deinen Post etwas entwirren für uns?

Container DNS:
- Ein Container der das Default-Bridge Netzwerk verwendet, bekommt die Datei /etc/resolv.conf gemountete -> verwendet die DNS-Resolver vom Host
- Ein Container der ein anderes Bridge-Netzwerk verwendet, nutzt den Docker internen DNS-Server, der wiederum die DNS-Resolver aus der /etc/resolv.conf als upstream verwendet -> verwendet die DNS-Resolver vom Host
- Ein Container kann mit dem Parameter --dns <ip des resolvers> einen alternativen DNS-Resolver gesetzt bekommen
- Ein Container der mit einem Endpunkt im Internet kommuniziert muss in der Lage sein DNS-Namen aufzulösen

Fehlermeldungen in Post #32:
- Hat nichts mit DNS zu tun. Es läuft bereits ein Prozess (vermutlich ein andere Container?) der den Host-Port schon blockiert.

Container mit fester IP-Adresse:
- Was hat "ich kann lokale DNS nicht nutzen ich muss mit IPs arbeiten" mit festen IP-Adressen für Container zu tun?
- Wenn ein Container Port auf einen Host-Port gemapped wird, dann ist der Container über die DSM-IP und den Host-Port erreichbar.

Im Zweifel sollte man immer in die entsprechende Dokumentation schauen, da auch Blog-Posts irgendwann nicht mehr (ganz) richtig sind.
Im Fall von fester Container IP wäre das bpsw. <https://docs.docker.com/compose/compose-file/05-services/#ipv4_address-ipv6_address> (das ist keine Aufforderung fest IPs zu nutzen! Es wird die Komplexität nur unnötig erhöhen und zum nächsten "problem of the minute" führen, wenn man nicht lernt die Anleitung zu verwenden)
 

xCleaner15

Benutzer
Mitglied seit
22. Mrz 2024
Beiträge
18
Punkte für Reaktionen
0
Punkte
7
im Klartext ich glaube es liegt an DSM und gleichzeitig an meinem Netzwerk hier ein Beispiel was sehr komisch ist.

die komische Sache ist dass ich einen docker-container habe der eine Web-Oberfläche besitzt diesen ich über mein Haupt-PC nicht öffnen kann aber unter meinem Windows Server genauso wie mit einem meiner Windows Test PC ich diese Seite ohne Probleme aufrufen kann aber unter meinem Windows ist der Browser synchronisiert.

sinusbot den ich eigentlich zum laufen kriegen wollte habe ich bis heute noch nicht zum laufen bekommen da immer derselbe Fehler kommt egal ob ich in der Konsole die rechte vergebe das einzige was ich in den commands anpasse ist die Gruppen ID und die User ID.


seit Windows 11 Pro 23H2 (BSB 22631.3374 )rausgekommen ist seitdem habe ich diese Probleme dort ist ja auch smb3 Zwang hinzugefügt worden seitdem ist mir das aufgefallen dass vieles nicht mehr richtig funktioniert.



ich habe es eine ganze jetzt nun einfacher gemacht ich habe unter DSM docker-funktion einfach wieder entfernt weil die Verwaltung davon absoluter Müll ist da mache ich das Ganze lieber unter unraid.net wo man auch deutlich mehr Einstellungsmöglichkeiten hat,
und auch nicht die Probleme habe ein docker-container zu löschen und als Fehlermeldung sie haben eine instabile Internetverbindung ( im lokalen Netzwerk )

ich bin halt aktuell noch sehr am hin und her schwanken die smb-performance ist unter DSM besser aber dafür ist die allgemeine Einstellung davon sehr eingeschränkt und unter unraid.net ist die SMB Performance schlechter dort habe ich bis jetzt aber noch kein einziges Problem gehabt
 

CasiVR

Benutzer
Mitglied seit
04. Apr 2022
Beiträge
45
Punkte für Reaktionen
4
Punkte
14
Bei mir sieht das bisschen anders aus, denke da liegt der Fehler
 

Anhänge

  • Screenshot_20240408_174244_Chrome.jpg
    Screenshot_20240408_174244_Chrome.jpg
    27,6 KB · Aufrufe: 11

xCleaner15

Benutzer
Mitglied seit
22. Mrz 2024
Beiträge
18
Punkte für Reaktionen
0
Punkte
7
leider funktioniert es bis heute noch nicht habe mich bis jetzt auch nicht einmal mit beschäftigt weil mir das System mittlerweile zu blöd geworden ist da ein anderes System bei mir deutlich pflegeleichter ist.

weil ich habe wie gesagt das Problem sobald ich einen docker-container starte mit einer Web-Anwendung kann dieser mit dem lokalen DNS nicht aufgerufen werden und man kann ja leider nicht einstellen dass der docker-container sich eine eigene iPv4-Adresse über DHCP zieht.

weil man müsste einfach diese Möglichkeiten hier haben diese Möglichkeiten habe ich allerdings auf einem anderen System und dies macht das Ganze deutlich einfacher
zb

Bridge : ( nutzt die lokale IP-Adresse des Gerätes plus Docker port für die Web-Oberfläche )
Host : ( nutzt die lokale IP-Adresse des hauptanschlusses des Gerätes plus Stalker Container Ports )
Custom : ( nutzt eine eigene IP-Adresse im lokalen Netzwerk um den docker-container ausgeben zu können )
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat