Synology-Forum.nl
Packages => Officiële Packages => Docker / Container Manager => Topic gestart door: Lipo op 30 juni 2024, 19:48:28
-
Ik krijg in portainer de volgende foutmelding m.b.t. farmos na installatie van farmos:
Farmos sites-directory not detected. Copying from pre-build files in the docker image.
In de docker-map heb ik de map farmos aangemaakt. In de map farmos heb ik de mappen db en sites aangemaakt.
Zie screenshot farmos log en container list.
Ik heb de volgende code met de webeditor van portainer in de portainer-stacks geplaatst:
version: "3.9"
services:
db:
image: postgres:16
container_name: FarmOS-DB
hostname: farmos-db
mem_limit: 1g
cpu_shares: 1024
security_opt:
- no-new-privileges:true
healthcheck:
test: ["CMD", "pg_isready", "-q", "-d", "farmos", "-U", "farmosuser"]
timeout: 45s
interval: 10s
retries: 10
volumes:
- /volume1/docker/farmos/db:/var/lib/postgresql/data:rw
environment:
POSTGRES_DB: farmos
POSTGRES_USER: farmosuser
POSTGRES_PASSWORD: farmospass
restart: on-failure:5
farmos:
image: farmos/farmos:latest
container_name: FarmOS
hostname: farmos
security_opt:
- no-new-privileges:true
ports:
- 7917:80
volumes:
- /volume1/docker/farmos/php.ini:/usr/local/etc/php/conf.d/farmos.ini:rw
- /volume1/docker/farmos/sites:/opt/drupal/web/sites:rw
restart: on-failure:5
depends_on:
db:
condition: service_healthy
-
Als goed is, zie je in de map de volgende dingen staan.
2 mappen
1 PHP-file
[attach=1]
Ik heb net getest, maar loopt gewoon hier.
-
Ja, die mappen heb ik aangemaakt. Ook die php-file heb ik in de map farmos staan.
-
In de docker-map heb ik de map farmos aangemaakt. In de map farmos heb ik de mappen db en sites aangemaakt.
Staan de rechten goed voor deze mappen? (Waarschijnlijk kan alleen root schrijven in die mappen.)
-
In navolging van terechte opmerking Zandhaas:
https://mariushosting.com/synology-how-to-find-uid-userid-and-gid-groupid/ (https://mariushosting.com/synology-how-to-find-uid-userid-and-gid-groupid/)
En dan kun je onder environment: toevoegen:
environment:
- PUID=1026 (eventueel aanpassen)
- PGID=100 (eventueel aanpassen)
- TZ=Europe/Amsterdam
-
nou dan zeg je mij wat zandhaas. ik zal eens kijken hoe het met de rechten staat.
-
Ik denk dat je de handleiding op https://mariushosting.com/how-to-install-farmos-on-your-synology-nas/ (https://mariushosting.com/how-to-install-farmos-on-your-synology-nas/) hebt gevolgd?
Geen foutmeldingen bij de stappen? Firewall aangepast?
-
Ik heb de user ID van mijn nas (PUID) al opgevraagd.
Ook het group ID van mijn nas (GUID) heb ik opgevraagd.
Ik heb geen idee waar je die waarden/getallen van mijn ID bij environmental access invult? Het is net of de outside server mijn ID niet overgebracht krijgt.
http://MIJN NAS IP:7917
Ik krijg de volgende foutmelding als ik met mijn nas op poort 7917 farmos wil starten:
kan geen verbinding maken
Maar het probleem is dus ook dat de farmos-container in portainer op exited staat. Het is toch raar dat mijn farmos sites-directory niet gevonden kan worden. Ik heb deze toch echt aangemaakt en deze bestaat toch echt. De rest van mijn containers draaien wel. Farmos-DB draait bijv. ook wel goed. Alle containers plaatsten zich ook automatisch in de nas-firewall, behalve farmos. Ik bedoel: poort 7917 waar deze container op draait, is bij installatie niet in de nas-firewall geplaatst als toegelaten. Bij die andere containers ging dat automatisch. Ik heb alle andere aanwezige poorten op blokkeren staan. Maar TCP-poort 7917 staat er niet tussen.
Maar geen foutmeldingen bij de stappen van de handleiding inderdaad, behalve dan exited in portainer en dat ik geen onbeveiligde verbinding op poort 7917 kan opzetten. Deze ga ik later ook voorzien van een certificaat. Maar ik moet het eerst maar met http draaiende zien te krijgen.
Maar ik kan de gevirtualiseerde farmos-applicatie dus niet draaien.
Wordt farmos in mijn nas-firewall geplaatst als ik mijn ID-gegevens juist invoer met portainer? De vraag is dus: waar voer ik ‘PUID=1026, PGID=100 en TZ=Europe/Amsterdam’ in?
Als ik naar het volgende ga: environments => manage access, dan krijg ik de volgende screenshot:
-
Als je container de "exited" status heeft is hij niet gestart en kun je hem natuurlijk ook niet benaderen.
Klik in portainer achter het woord exited eens op het eerste icoontje. Dan zie je de inhoud van het log bestand. Als het goed is zie daar dan ook waarom hij niet wil starten.
En probeer de container anders nog eens te starten zodat de meest recente melding in de log bij het starten van de container horen.
-
Ik heb nog eens naar je compose file gekeken.
Daar staat bij de farmos container dat hij afhankelijk is van de DB container en dat de DB container de status Healthy moet hebben maar...........
Heeft de DB container de status healthy of de status running??
depends_on:
db:
condition: service_healthy
Volgens mij kun je die conditie regel ook weglaten.
Volgens mij moet je de FARMOS container op het moment dat de DB container draait handmatig wel kunnen starten. Heb je dat al eens geprobeert??
-
Die variabelen zet je bij t blokje environment: erbij in de compose die je al postte.
Maar als Marius die niet gebruikt verwacht ik niet dat dat verschil maakt. Je kunt m prima bericht sturen met je vraag erin, hij reageert meestal wel.
Bij mij zet geen 1 container zich automatisch in de firewall trouwens.
-
Even check vraag. Je /docker directory staat idd op /volume1? Niet op andere volume?
Ik heb het net even geprobeerd, lang wachten maar alles werkt in 1x.
Aanvulling: ik gebruik ook Portainer.
-
IK heb het ook even allemaal getest en ok hier werkte het meteen.
Ik moet er dan wel bij zeggen dat ik alles via de commandline heb gedaan en dus geen gebruik heb gemaakt van portainer.
Dus via ssh inloggen met je DSM user daarna een sudo -i om root te worden.
Directories aangemaakt
Een docker-compose.yml bestand aangemaakt met daarin jou compose file inhoud erin gekopieerd
een php.ini file aangemaakt met minimale inhoud
en dan docker-compose up -d even wachten toot alles is gedownload en de container zijn gestart.
En dan via browser connecteren met de farmos container daarna netjes de eerste installatie zaken doorgelopen en ingevult en zover ik het kon zien werkt het daarna.
IK zou zeggen begin eens helemaal opnieuw. Desnoods maak je een tweede farmos directorie aan (pas dan wel je compose file de volume verwijzingen aan naar de nieuwe directory) en kijk of dit een ander resultaat opleverd.
-
De DB-container staat op heathy. Maar dat is hetzelfde als running. Alle containers met status healthy zijn bij mij running.
Bij mij worden de containers automatisch in de firewall gezet.
Docker staat op volume 1.
De vraag is waarom wordt die farmos-container gestopt?
-
Wat zegt het log? Kun je in Portainer ook bekijken per container, icoontje van velletje met omgeslagen hoekje.
En staan er wel bestanden in de door jou aangemaakte mappen? Ik zie daar nu van alles staan. Als dat zo is, is het geen rechten issue.
En idd: opnieuw beginnen en stappenplan precies volgen.
-
Ja, er staan bestanden in de mappen farmos, db en sites.
De log-gegevens met de foutmelding heb ik hier helemaal bovenaan al geplaatst.
Ook heb ik farmos al voor een tweede keer via de handleiding van Marius gevolgd. Volgens mij heb ik dat goed gedaan. Maar dan doe ik het nog maar voor een derde keer.
Ik neem aan dat ik dan gewoon de mappen farmos, db en sites kan verwijderen met filestation? Dat heb ik bij de tweede keer installeren in ieder geval wel gedaan. En dat farmos uiteraard ook verwijderen in portainer.
-
Lijkt erop dat de gebruikte Apache in het image problemen geeft op oudere modellen Synology.
https://github.com/nextcloud/docker/issues/1574 (https://github.com/nextcloud/docker/issues/1574)
Kijk eens wat er gebeurt als je oudere versie probeert. Je trekt nu de 'latest' naar binnen er zijn ook tags voor oudere versies:
farmos:
image: farmos/farmos:latest
vervang door:
farmos:
image: farmos/farmos:3.x-dev
(of image: farmos/farmos:2.x nog ouder image)
Wel even in de Stack editor aangeven bij Update the stack, dat je nieuw image wilt deployen).
Ik heb de vraag ook even gesteld op de Synology Discord van Mariushosting.
-
Ik heb een oude DS216+
Ook heb ik een nieuwe, veel zwaardere NAS. Maar die wil ik niet gebruiken om farmos op te draaien.
Ik krijg bij opnieuw installeren van farmos de melding:
Unable to deploy stack.
A stack with the normalized name ‘farmos’ allready exist.
Ik heb waarschijnlijk na de eerste keer installeren van farmos niet correct alles verwijderd, en daardoor zijn er mogelijk nog dingen van farmos achtergebleven. En is er niet nog wat registry info achtergebleven m.b.t. farmos?
Ik heb in DSM de mappen farmos, db en sites met file station verwijderd.
Ook heb ik in portainer de container van farmos stopgezet.
Daarna heb ik in portainer de stack van farmos verwijderd.
Ook heb ik in images de farmos unused image verwijderd met delete this image, en ik kreeg de melding ‘image succesfully deleted. Moet ik de ‘postgres-image’ niet ook verwijderen? Ik weet niet wat dit is.
Ik dacht ook al om een andere stacknaam op te geven dan ‘farmos’. Maar volgens mij is dat niet zo verstandig.
Ik weet ook niet of ik bij networks iets in de networklist moet verwijderen.
Bij mij in de volumelist staat overigens niets.
-
Dank je wel Bartmans. Ik ga zo jouw info verwerken.
Ik moet nu eerst wat boodschappen doen en wat eten, anders gaat het dadelijk niet goed.
-
https://mariushosting.com/synology-common-docker-issues-and-fixes/
Nummer 11.
Weinig aan te doen dus. Behalve nieuwere NAS. Weer wat geleerd.
-
Dan moet ik mijn linux-kernel-versie van de NAS controleren en hopen dat deze 4.x is.
Gelukkig heb ik een nieuwe NAS. Maar ik had deze liever niet gebruikt voor farmos. Dat is wel een tegenvaller.
Ik ga synology dit probleem wel melden. En dan hoop ik dat ze er wat aan doen.
Dank.
-
Ik heb de volgende ondersteuningsticket ingediend bij synology:
Niet alle docker's worden ondersteund vanwege de verouderde kernel.
Om docker farmos op mijn NAS te kunnen draaien heb ik linux kernel versie 4.x nodig. Ik heb linux kernel versie 3.10. Graag wil ik dat de farmos-docker op mijn DS216+ gaat draaien. Zouden jullie een oplossing kunnen maken voor dit probleem?
Ik heb een screenshot van mijn farmos-log toegevoegd.