/usr/bin/docker : Erreur de réponse du démon : échec de la programmation de la connectivité externe sur le point de terminaison app

Salut à tous, je suis bloqué sur ce problème depuis plus d’une semaine. J’ai lu tous les sujets pertinents sur Meta et essayé toutes les solutions ici et ailleurs, mais rien ne fonctionne. Je suis vraiment coincé.

À chaque fois que j’essaie ./launcher rebuild app, cela va jusqu’au bout et ensuite…

Suppression de l'ancien conteneur
+ /usr/bin/docker rm app
app

+ /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e RAILS_ENV=production -e UNICORN_WORKERS=4 -e UNICORN_SIDEKIQS=1 -e RUBY_GLOBAL_METHOD_CACHE_SIZE=131072 -e RUBY_GC_HEAP_GROWTH_MAX_SLOTS=40000 -e RUBY_GC_HEAP_INIT_SLOTS=400000 -e RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=1.5 -e DISCOURSE_DB_SOCKET=/var/run/postgresql -e DISCOURSE_DB_HOST= -e DISCOURSE_DB_PORT= -e LETSENCRYPT_DIR=/shared/letsencrypt -e DISCOURSE_HOSTNAME=bitkcor.com -e DISCOURSE_DEVELOPER_EMAILS=admin@bitkcor.com -e DISCOURSE_SMTP_ADDRESS=smtp.mailgun.org -e DISCOURSE_SMTP_PORT=2525 -e DISCOURSE_SMTP_USER_NAME=postmaster@bitkcor.com -e DISCOURSE_SMTP_PASSWORD=af3ce4432f9613e0b36545e5c1b941c6-c1fe131e-22e64a1e -e LETSENCRYPT_ACCOUNT_EMAIL=admin@bitkcor.com -h bitkcor-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address 02:d6:ee:ff:fa:8d local_discourse/app /sbin/boot
2bef25314e87e6c0679ced8f3c04dd8a98808350baba7a4ff94a3e4c55dc5c20
/usr/bin/docker: Réponse d'erreur du démon : échec de la programmation de la connectivité externe sur le point de terminaison app (095c02cba7ddee18c64f04ccd1043408aa8ffed8a3c560b8eeeea133c7abe6c6) : Erreur lors du démarrage du proxy utilisateur : listen tcp 0.0.0.0:80 : bind : l'adresse est déjà utilisée.

Je pense que la solution doit être simple, mais je n’arrive pas à la trouver.

Quelqu’un connaît-il la réponse ?

1 « J'aime »

Quelque chose bloque le port 80, ce qui signifie qu’un serveur web est en cours d’exécution.

2 « J'aime »

Merci Jeff, j’ai lu ton commentaire sur un fil de discussion à ce sujet de 2015 plus tôt aujourd’hui. Y a-t-il une commande terminal pour tracer ce qui l’utilise ?

J’ai essayé sudo lsof -i :80 et voici le résultat.

COMMAND  PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   3336     root    6u  IPv4  21408      0t0  TCP *:http (LISTEN)
nginx   3336     root    7u  IPv6  21409      0t0  TCP *:http (LISTEN)
nginx   3338 www-data    6u  IPv4  21408      0t0  TCP *:http (LISTEN)
nginx   3338 www-data    7u  IPv6  21409      0t0  TCP *:http (LISTEN)
nginx   3339 www-data    6u  IPv4  21408      0t0  TCP *:http (LISTEN)
nginx   3339 www-data    7u  IPv6  21409      0t0  TCP *:http (LISTEN)
1 « J'aime »

D’accord, je le faisais mal. J’ai quitté root et relancé sudo lsof -i :80. J’essaie encore de comprendre de quoi il s’agit, mais c’est un progrès.

COMMAND   PID        USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
Google    671 triberocket   30u  IPv4 0x1e729b312ca69e05      0t0  TCP 10.0.0.237:56713->server-13-249-71-64.dfw53.r.cloudfront.net:http (ESTABLISHED)
Google    671 triberocket   58u  IPv4 0x1e729b311af72ba5      0t0  TCP 10.0.0.237:56714->server-13-249-71-64.dfw53.r.cloudfront.net:http (ESTABLISHED)
1 « J'aime »

Maintenant, je suis complètement perdu. J’ai utilisé le Moniteur d’activité et trié par Port. Une application Google Drive File Stream que je viens de télécharger était conçue pour prendre le port 80. L’application était bizarre, alors je l’ai complètement supprimée et j’ai vidé la corbeille. Dès que j’ai fermé l’application Google, quelque chose appelé ContactAccountsServices est apparu dans le Moniteur d’activité. Je l’ai fermé et j’ai redémarré complètement l’ordinateur.

L’ordinateur redémarre. J’ai découvert que ce que j’appelais Google ci-dessus correspondait en fait à deux onglets dans Chrome. J’ai fermé Chrome et exécuté ./launcher rebuild app. Après le redémarrage, je me suis connecté en ssh root@... et j’ai lancé system reboot sur le serveur Ubuntu. Cela semblait avoir fait quelque chose, mais on ne veut jamais trop s’enthousiasmer trop vite. Alors je reviens en arrière et, pour faire court :

2020-04-10 22:38:39.934 UTC [49] LOG: aborting any active transactions

2020-04-10 22:38:39.937 UTC [49] LOG: worker process: logical replication launcher (PID 58) exited with exit code 1

2020-04-10 22:38:39.939 UTC [53] LOG: shutting down

166:M 10 Apr 2020 22:38:39.942 # User requested shutdown...

166:M 10 Apr 2020 22:38:39.942 * Saving the final RDB snapshot before exiting.

2020-04-10 22:38:39.964 UTC [49] LOG: database system is shut down

166:M 10 Apr 2020 22:38:39.978 * DB saved on disk

166:M 10 Apr 2020 22:38:39.978 # Redis is now ready to exit, bye bye...

sha256:ab0f0c30c7e98b280832fc0355cd0a3eada6063b268b8ae1371e9d315b0ca43e

293cf39b9377bfd9dda6a0e3b9d43bde3e6dcc8341d34d9da21a155f18afb45c

Removing old container

+ /usr/bin/docker rm app

app

+ /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e RAILS_ENV=production -e UNICORN_WORKERS=4 -e UNICORN_SIDEKIQS=1 -e RUBY_GLOBAL_METHOD_CACHE_SIZE=131072 -e RUBY_GC_HEAP_GROWTH_MAX_SLOTS=40000 -e RUBY_GC_HEAP_INIT_SLOTS=400000 -e RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=1.5 -e DISCOURSE_DB_SOCKET=/var/run/postgresql -e DISCOURSE_DB_HOST= -e DISCOURSE_DB_PORT= -e LETSENCRYPT_DIR=/shared/letsencrypt -e DISCOURSE_HOSTNAME=bitkcor.com -e DISCOURSE_DEVELOPER_EMAILS=admin@bitkcor.com -e DISCOURSE_SMTP_ADDRESS=smtp.mailgun.org -e DISCOURSE_SMTP_PORT=2525 -e DISCOURSE_SMTP_USER_NAME=postmaster@bitkcor.com -e DISCOURSE_SMTP_PASSWORD=af3ce4432f9613e0b36545e5c1b941c6-c1fe131e-22e64a1e -e LETSENCRYPT_ACCOUNT_EMAIL=admin@bitkcor.com -h bitkcor-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address 02:d6:ee:ff:fa:8d local_discourse/app /sbin/boot

b2076d8166130c73c7d988e7e51ac100b9a12ce75f020328d0f47eebdad5e9a3

/usr/bin/docker: Error response from daemon: driver failed programming external connectivity on endpoint app (ba1f594a24e17f29cdaeb0cfe3f2a79af2bb7d22a28c4902c97d37e8f5036347): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use.

Alors, oui. Je suis prêt à enfiler des jupes en herbe et à utiliser des os de poulet pour déboguer cela. C’est un genre de vaudou qui doit être une chose simple que je regarde directement mais que je n’ai pas encore essayée. Ce que c’est, je ne peux pas vous le dire. Pouvez-vous me le dire ? S’il vous plaît ? Ma santé mentale en dépend. Je suis meilleur que ça. lol

2 « J'aime »

Essayez sudo systemctl stop nginx.

4 « J'aime »

La page de bienvenue nginx a été supprimée, mais maintenant rien ne se charge — https://bitkcor.com/

Toujours en train de fixer une page blanche. Dois-je redémarrer quelque chose maintenant ? Des suggestions ?

En fait, il suffit de remettre le SSL en mode strict dans Cloudflare et tout est revenu.

La solution était sudo systemctl stop nginx.

Merci @riking !

2 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.