Closed niekniek89 closed 2 years ago
Ik vermoed dat weer geneuzel is met Portainer die op een of andere manier toch weer vreemd omgaat met nieuwe images waar een aantal grotere wijzigingen inzitten. Ik heb dat nu al zo vaak gezien helaas. Misschien even helemaal uit Portainer verwijderen en opnieuw toevoegen? Ik heb de image op een 3-tal devices getest en er zijn geen issues. Overigens is het ook vreemd dat nginx niet kan starten op poort 80 in de container zelf wanneer je in bridge modus draait met Docker omdat er verder geen enkel proces poort 80 gebruikt.
Ik kom wellicht enigszins geirriteerd over, dat is niet richting jou als persoon maar richting Portainer (imho rommel) ✌️ .
Voor de zekerheid kan je het even checken of er iets op poort 80 draait op v5.1.0 door het volgende uit te voeren:
docker exec -ti <dsmr container> bash -c "netstat -tlpn | grep 80"
...en dan hoop ik uiteraard dat er niets draait, anders heb ik een te grote mond gehad 😄
Bedankt voor berichtje, zal het niet persoonlijk opvatten👍! Ik ben bang dat je vermoedens m.b.t. Portainer juist zijn... Zojuist nogmaals de upgrade naar V.5.1.0 gestart, en direct begint de logging mbt de "error" weer te lopen.
Na de upgrade op de linux VM gechecked, en zie nergens poort 80 in voor komen (word op heel de VM niet gebruikt voor andere zaken).
Het lijkt dus idd in Portainer te zitten. Met verwijderen & opnieuw toevoegen bedoel je dit gedeelte neem ik aan:
Klopt, maar dat is mijn punt ook. Wanneer je kijkt naar de portainer configuratie zie je dat poort 8888 en poort 8889 van jouw Linux VM gekoppeld worden naar respectievelijk poort 80 en 443 in de container. Het gaat er dus om wat er op poort 80 en 443 in de container gestart is. Maar aangezien Docker containers een dedicated functie hebben, in dit geval 1 proces dat iets doet met poort 80 en 443, is het feitelijk gezien onmogelijk dat dit gebeurd op de DSMR container. Lastig uit te leggen maar ik hoop dat je een beetje begrijpt wat ik bedoel.
Op jouw Linux VM zie je dus voor DSMR alleen processen op poort 8888 en 8889, de rest draait geisoleerd in de container op poort 80 en 443.
Ik heb Portainer in het verleden weleens gebruikt maar ben er niet helemaal meer in thuis. Ik bedoel eigenlijk gewoon heel de DSMR Docker config verwijderen uit Portainer en opnieuw toevoegen.
Je kan ook even de output delen van docker container ls --format "table {{.Names}}\t{{.Ports}}" -a
vanaf je Linux VM, en de output van het command dat ik eerder heb gestuurd. Misschien valt mij dan nog iets op.
Bedankt voor je hulp! Hier de output van "docker ps -a":
Thanks, dat ziet er iig goed uit iig. Vreemd is het ook dat de healthcheck wel werkt (checkt of DSMR draait op poort 80 namelijk).
Ik dacht dat je mss in host mode draaide maar dat is niet het geval, dus wat ik eerder vertelde over de poort mappings klopt.
Ik zit inmiddels weer op V5.0, maar de health check met V5.1.0 werkte daar ook prima. Dus daar zit het hem idd niet in. Alles werkt ook gewoon na de upgrade, alleen viel de vele error meldingen bij op binnen portainer.
Ik ga eens kijken hoe ik de DSMR Docker config kan verwijderen/toevoegen.
Ja, balen, maar ik vrees dat ik geen oplossing voor je heb anders dan ik heb voorgesteld.
Bedankt zover voor je hulp, ik begrijp het. Het is ook geen DSMR gerelateerd probleem.
Ik ga ermee aan de slag! Zal het issue zo wel sluiten.
Na het verwijderen van de containers + images, DSMR/DSMRdb weer opnieuw uitgerold. Daarna waren de foutmeldingen weg.
Lag dus inderdaad aan portainer! Probleem dus opgelost.
Yes, helaas is het niet altijd mooi met Portainer, geen idee hoe dat komt eigenlijk. Ik zal het binnenkort ook weer eens installeren, misschien kan ik iets ontdekken waardoor we dit in de toekomst kunnen voorkomen. Hoe dan ook mooi dat het werkt.
Ik heb ook geen idee, heel apart. Maar goed, ik weet voortaan hoe ik dit soort "issues" gemakkelijk kan fixen. Bedankt voor al het werk, en je hulp zover.
Support guidelines
I've found an issue and checked that ...
Description
Ik heb zojuist DSMR Reader van V5.0 geupgraded naar V5.1. Sinds dat moment krijg ik allerlei foutmeldingen in de logging van Portainer.
*Echter lijkt alles wel te functioneren, maar blijft onderstaande logging lopen.
Starting DSMR Reader - nginx... 2022/03/02 07:35:58 [emerg] 1757#1757: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:58 [emerg] 1757#1757: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 192.168.178.170 - - [02/Mar/2022:07:35:59 +0100] "GET /xhr/header HTTP/1.1" 200 148 "http://192.168.176.36:8888/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62" "-"
Expected behaviour
Ik had deze logging niet verwacht, deze had ik in V5.0 nog niet.
Actual behaviour
Zie bovengenoemde logging/errors
Steps to reproduce
V5.0 upgraden naar V5.1
Docker info
Version
docker-compose --version
): docker-compose version 1.25.0, build unknownuname -a
): Linux vm02 5.4.0-100-generic #113-Ubuntu SMP Thu Feb 3 18:43:29 UTC 2022 x86_64 x86_64 x86_64 GNU/LinuxDocker compose
Container logs
2022/03/02 07:35:43 [emerg] 1671#1671: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:43 [emerg] 1671#1671: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:43 [emerg] 1671#1671: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 192.168.178.170 - - [02/Mar/2022:07:35:46 +0100] "GET /xhr/header HTTP/1.1" 200 148 "http://192.168.176.36:8888/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62" "-" 2022/03/02 07:35:43 [emerg] 1671#1671: still could not bind() nginx: [emerg] still could not bind() Starting DSMR Reader - nginx... 2022/03/02 07:35:46 [emerg] 1684#1684: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:46 [emerg] 1684#1684: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:46 [emerg] 1684#1684: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 192.168.178.170 - - [02/Mar/2022:07:35:47 +0100] "GET /xhr/header HTTP/1.1" 200 148 "http://192.168.176.36:8888/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62" "-" 127.0.0.1 - - [02/Mar/2022:07:35:47 +0100] "GET /about HTTP/1.1" 302 0 "-" "curl/7.79.1" "-" 127.0.0.1 - - [02/Mar/2022:07:35:47 +0100] "GET /admin/login/?next=/about HTTP/1.1" 200 2196 "-" "curl/7.79.1" "-" s6-supervise dsmr_remote_datalogger: warning: unable to spawn ./run - waiting 10 seconds s6-supervise (child): fatal: unable to exec run: No such file or directory 2022/03/02 07:35:46 [emerg] 1684#1684: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:46 [emerg] 1684#1684: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:46 [emerg] 1684#1684: still could not bind() nginx: [emerg] still could not bind() Starting DSMR Reader - nginx... 2022/03/02 07:35:48 [emerg] 1700#1700: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:48 [emerg] 1700#1700: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 192.168.178.170 - - [02/Mar/2022:07:35:49 +0100] "GET /xhr/header HTTP/1.1" 200 148 "http://192.168.176.36:8888/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62" "-" 2022/03/02 07:35:48 [emerg] 1700#1700: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:48 [emerg] 1700#1700: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:48 [emerg] 1700#1700: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:48 [emerg] 1700#1700: still could not bind() nginx: [emerg] still could not bind() Starting DSMR Reader - nginx... 2022/03/02 07:35:51 [emerg] 1712#1712: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 192.168.178.170 - - [02/Mar/2022:07:35:51 +0100] "GET /xhr/header HTTP/1.1" 200 148 "http://192.168.176.36:8888/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62" "-" 2022/03/02 07:35:51 [emerg] 1712#1712: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:51 [emerg] 1712#1712: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:51 [emerg] 1712#1712: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 127.0.0.1 - - [02/Mar/2022:07:35:52 +0100] "GET /about HTTP/1.1" 302 0 "-" "curl/7.79.1" "-" 127.0.0.1 - - [02/Mar/2022:07:35:52 +0100] "GET /admin/login/?next=/about HTTP/1.1" 200 2196 "-" "curl/7.79.1" "-" s6-supervise (child): fatal: unable to exec run: No such file or directory s6-supervise dsmr_datalogger: warning: unable to spawn ./run - waiting 10 seconds 2022/03/02 07:35:51 [emerg] 1712#1712: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 192.168.178.170 - - [02/Mar/2022:07:35:53 +0100] "GET /xhr/header HTTP/1.1" 200 148 "http://192.168.176.36:8888/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62" "-" 2022/03/02 07:35:51 [emerg] 1712#1712: still could not bind() nginx: [emerg] still could not bind() Starting DSMR Reader - nginx... 2022/03/02 07:35:53 [emerg] 1728#1728: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) s6-supervise dsmr_backend: warning: unable to spawn ./run - waiting 10 seconds s6-supervise (child): fatal: unable to exec run: No such file or directory 2022/03/02 07:35:53 [emerg] 1728#1728: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:53 [emerg] 1728#1728: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:53 [emerg] 1728#1728: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 192.168.178.170 - - [02/Mar/2022:07:35:55 +0100] "GET /xhr/header HTTP/1.1" 200 148 "http://192.168.176.36:8888/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62" "-" 2022/03/02 07:35:53 [emerg] 1728#1728: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:53 [emerg] 1728#1728: still could not bind() nginx: [emerg] still could not bind() Starting DSMR Reader - nginx... 2022/03/02 07:35:56 [emerg] 1741#1741: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:56 [emerg] 1741#1741: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:56 [emerg] 1741#1741: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 192.168.178.170 - - [02/Mar/2022:07:35:57 +0100] "GET /xhr/header HTTP/1.1" 200 148 "http://192.168.176.36:8888/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62" "-" s6-supervise dsmr_remote_datalogger: warning: unable to spawn ./run - waiting 10 seconds s6-supervise (child): fatal: unable to exec run: No such file or directory 2022/03/02 07:35:56 [emerg] 1741#1741: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 127.0.0.1 - - [02/Mar/2022:07:35:57 +0100] "GET /about HTTP/1.1" 302 0 "-" "curl/7.79.1" "-" 127.0.0.1 - - [02/Mar/2022:07:35:57 +0100] "GET /admin/login/?next=/about HTTP/1.1" 200 2196 "-" "curl/7.79.1" "-" 2022/03/02 07:35:56 [emerg] 1741#1741: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:56 [emerg] 1741#1741: still could not bind() nginx: [emerg] still could not bind() Starting DSMR Reader - nginx... 2022/03/02 07:35:58 [emerg] 1757#1757: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 2022/03/02 07:35:58 [emerg] 1757#1757: bind() to 0.0.0.0:80 failed (98: Address in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address in use) 192.168.178.170 - - [02/Mar/2022:07:35:59 +0100] "GET /xhr/header HTTP/1.1" 200 148 "http://192.168.176.36:8888/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62" "-"
Additional info
Zit nu weer op V5.0, en de emerg meldingen zijn verdwenen. Tevens is nergens te zien dat ik poort 80 ergens anders voor gebruik (de melding is er in V5.0 ook niet).