Kann vorgefertigtes GitLab Paket nicht installieren

  • Hallo zusammen,


    Ich würde gerne GitLab auf meinem neuen QNAP Server TS-453BU-RP-4G benutzen.


    Bei der Installation bin ich 1:1 dem Tutorial auf
    https://www.qnap.com/de-de/how…ung-der-container-station
    gefolgt und habe die von QNAP programmierte Docker Station verwendet.
    Ist also alles aus QNAP Hand :)


    Die Installation scheint auch anfangs zu klappen, aber der Container kann nicht starten.
    Es kommt vom gitlab_gitlab_1 Docker die Fehlermeldung:


    Code
    Initializing logdir...chown: changing ownership of '/var/log/gitlab/nginx': Disk quota exceeded



    Wenn ich mich dann per SSH einwähle und schaue wieviel Platz die Container belegen sehe ich, dass alle noch bei 0 KB stehen:


    Code
    [~] # docker ps -a --size
    CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS                         PORTS                                                   NAMES                 SIZE
    fd8a159f9c0c        sameersbn/gitlab:8.9.6-1      "/sbin/entrypoint.sh "   16 minutes ago      Restarting (1) 2 minutes ago   443/tcp, 0.0.0.0:10022->22/tcp, 0.0.0.0:10080->80/tcp   gitlab_gitlab_1       0 B (virtual 748.1 MB)
    bb1fb127335a        sameersbn/postgresql:9.4-23   "/sbin/entrypoint.sh"    16 minutes ago      Up 16 minutes                  5432/tcp                                                gitlab_postgresql_1   0 B (virtual 239.9 MB)
    9217875c4f6b        sameersbn/redis:latest        "/sbin/entrypoint.sh "   16 minutes ago      Up 16 minutes                  6379/tcp                                                gitlab_redis_1        0 B (virtual 203.4 MB)

    Habt ihr eine Idee, woran das liegen könnte?
    Wenn ich die Lösung finde, poste ich die Antwort hier im Thread :)


    Viele Grüße,
    Felix

  • Ich hab noch weiter gewühlt.



    Ich habe zumindest den Ursprung der Fehlermeldung ausfindig machen können:
    https://github.com/sameersbn/d…s/runtime/functions#L1169


    Das bedeutet, es gibt kein Problem Dinge als root Nutzer zu schreiben (die Zeilen davor werfen keinen Fehler). Wenn hingegen Befehle als ${GITLAB_USER}: ausgeführt werden sollen, taucht die "Disk quota exceeded" Meldung auf.
    Also ist da scheinbar irgendein Problem mit dem User?



    Ich hab noch tiefer geschaut:
    Der Nutzer ${GITLAB_USER}: ist Standardmäßig "git", dieser ist aber auf dem NAS gar nicht vorhanden
    https://github.com/sameersbn/d…d50d9fc44f/Dockerfile#L11



    Schlägt vielleicht schon die Installation fehl, ohne das man die Fehlermeldung sieht weil die Ausgabe dafür nicht existiert? Ich denke hier liegt das Hauptproblem.



    Bis hierhin bin ich gekommen, jetzt benötige ich bitte weitere Hilfe :)

  • Hallo Felix,


    ich habe auf meinem TS-251A testweise eine Installation des Gitlab Containers V8.9.6 gestartet. Bei mir wurden drei Container für Gitlab erzeugt und die Installation nahm schon einige Minuten in Anspruch. Scheint aber zu laufen, bekomme das GitLab Webinterface aufgerufen.


    Du musstest für die Containerstation bei der Einrichtung einen Freigabeordner namens "Container" einrichten. Eigentümer ist bei mir Admin mit Lese- und Schreibrechten. Der Ordner ist auch nicht verschlüsselt bzw. gesperrt. Um mal ein paar einfache Stichworte in die Waagschale zu werfen. ;)


    Nachtrag: Ganz vergessen zu schreiben: Ich habe für die Installation nur einmal auf den Github Container geklickt. Der Rest fluppte von ganz alleine.



    Nachtrag II: Ich habe eine weitere Installation auf einem TS-653Pro gestartet und tatsächlich hängt hier die Installation wie bei @Bouvere.


    Rudimentärer Vergleich der beiden Installationen: Containerstation 1.7.2502 bei beiden Geräten, QTS 4.3.3.0299 beim TS-251A und QTS 4.2.5 beim TS-653Pro

    2 Mal editiert, zuletzt von phoneo ()

  • Hallo phoneo,


    lieben Dank schonmal dafür, dass du es sogar gleich auf zwei Geräten ausprobiert hast :)


    Bekommst du sogar die gleiche Fehlermeldung wie bei mir?
    Unterscheidet sich sonst irgendwas bei den beiden Geräten?


    Ich denke halt, es ist schon die Installation von GitLab oder sogar schon die der Container Station insgesamt die scheitert. Ich versuche gleich mal die Log-Files zu finden und zu entschlüsseln..
    Vermute aber es ist ein Problem auf Seiten von QNAP / QTS, da die gleiche GitLab Version auf der gleichen Containerstation zwei unterschiedliche Ergebnisse produziert.


    Habe den Fehler jetzt vermutlich gefunden und es ist tatsächlich ein Problem auf Seiten von QNAP:
    Bei der Installation des Containers soll ein Nutzer erstellt werden. Das passiert aber nicht. Grund hierfür ist, dass der Benutzer mit dem Kommando
    adduser --disabled-login --gecos 'GitLab' ${GITLAB_USER}
    erstellt wird.


    Die Option kennt die adduser Version von QNAP nicht und so kommt der Fehler

    Code
    adduser: unrecognized option '--disabled-login'.
    BusyBox v1.24.1 (2017-11-01 02:37:31 CST) multi-call binary.

    Da dann kein Benutzer erstellt wurde, scheitern auch alle folgenden Kommandos die auf diesen Nutzer Bezug nehmen.


    Warum das jetzt aber auf einer Box von dir klappt und der anderen nicht, kann ich mir nicht erklären :D

  • Welche QTS Firmware läuft eigentlich auf deinem Gerät?


    auf meinem TS-251A läuft die Busybox V1.22.1
    auf meinem TS-653Pro läuft auch Busybox V1.22.1


    Die Fehlermeldung schicke ich dir später, hier schon einmal die Ausgabe der Dockermeldung des funktionierenden Containers auf dem TS-251A:


    Code
    [~] # docker ps -a --size
    CONTAINER ID        IMAGE                              COMMAND                                                                                                          CREATED             STATUS                      PORTS                                                                                                                                                           NAMES                 SIZE
    3112d3e67381        sameersbn/gitlab:8.9.6-1           "/sbin/entrypoint.sh "                                                                                           15 hours ago        Exited (137) 12 hours ago                                                                                                                                                                   gitlab_gitlab_1       88.79 kB (virtual                                                                                         748.2 MB)
    6fb08bdb0a48        sameersbn/redis:latest             "/sbin/entrypoint.sh "                                                                                           15 hours ago        Exited (0) 12 hours ago                                                                                                                                                                     gitlab_redis_1        0 B (virtual 203.4                                                                                         MB)
    ba1af30303a4        sameersbn/postgresql:9.4-23        "/sbin/entrypoint.sh"                                                                                            15 hours ago        Exited (0) 12 hours ago                                                                                                                                                                     gitlab_postgresql_1   0 B (virtual 239.9

    @Bouvere Nachtrag:


    Bitte einmal kurz mitüberlegen. Ich vermute zwar auch, dass die Problematik an der QTS-Firmware liegt, aber:


    Welches Betriebssystem ist eigentlich für die Docker-Container zuständig? Ist die Busybox überhaupt für die Abarbeitung der Installationsbefehle zuständig? Für mich #Neuland ...

    Einmal editiert, zuletzt von phoneo ()

  • Hi Phoneo,


    du hast Recht. Das Problem liegt leider doch woanders, da die Container Station ja quasi ein ganz eigenes Linux System darstellt. Dort wird nicht die BusyBox verwendet sondern ein adduser Kommando von Ubuntu, dass genau diesen Syntax unterstützt. Habe inzwischen rausgefunden, wie ich Kommandos in dem Container-Umfeld ausführen kann und damit rausgefunden, dass der Benutzer "git" tatsächlich existiert.
    Meine vorherige Vermutung war also leider falsch, die Installation scheint zu klappen.


    Bin also wieder ratlos. Probiere mal weiter rum und melde mich wenn ich was neues weiß.


    Danke nochmal für die Unterstützung :)


    PS.: Falls du auch versuchen willst Kommandos innerhalb eines Containers laufen zu lassen musst du per SSH auf die Box und kannst dann Kommandos ausführen, z.B.:

    Code
    docker run -it sameersbn/gitlab:8.9.6-1 echo "It's bigger on the inside!"

    So habe ich auch herausgefunden welches adduser dort läuft.

    2 Mal editiert, zuletzt von Bouvere ()

  • Hi Felix,


    mich interessiert auf jeden Fall die Lösung. Ich würde mich in der Angelegenheit an den QNAP Support wenden. Vielleicht ist dort schon eine Lösung bekannt.


    Viel Erfolg!

  • Es wird dir vermutlich nicht helfen. Aber nachdem ich beim TS-653Pro die Firmware auf V4.3.3.0378 aufgerüstet habe, funktioniert der Gitlab Container nun auch auf diesem Gerät. Die Funktion des Containers ist dann wohl von der Firmware Version abhängig.


    Mein Fazit: In der Vergangenheit war es sehr ärgerlich, wenn QPKG - Apps von einer Firmware Version zur nächsten nicht mehr funktionierten. Container-Systeme wie Docker sollten durch die Virtualisierung eine Unabhängigkeit vom Wirtssystem schaffen. Leider ist das wohl (noch) nicht gewährleistet.

  • Hi Phoneo,


    danke für die Rückmeldung. Bei meinem NAS funktioniert es leider auch nach dem Firmware Update nach wie vor nicht.
    Ich hätte auch wie du schon sagst erwartet, dass Docker dafür sorgt, dass eine App bei allen oder niemandem funktioniert.
    Es wird also wohl an der Container Station liegen.


    Mein Ticket beim QNAP Support wurde übrigens geschlossen, denn "Alle Applikationen von Drittanbieter die als Container im Container laufen sollen sind keine von uns Entwickelten Apps. Bitte wenden Sie sich hier an das Gitlab Team."


    Du bist von 3 Kanälen (QNAP Support, GitLab Support, QNAP Club) denen ich mein Problem geschildert habe der Einzige, der zumindest irgendwie darum bemüht war, zu helfen :)
    Habe jetzt einfach nochmal ein Ticket aufgemacht und hoffe einen anderen Sachbearbeiter zu bekommen und habe im englischen QNAP Forum einen Post verfasst.


    Halte alle Kanäle auf dem Laufenden, falls ich die Lösung finde!
    Auf meinem kleinen Heim NAS läuft die Box übrigens auch ohne Probleme. Ist mir weiterhin schleierhaft!