Eh bien, je souhaite essayer Discourse, alors je l’installe via Docker, mais je rencontre cette erreur. En cherchant, je vois que beaucoup de personnes rencontrent cette erreur, mais je ne parviens pas à comprendre comment la résoudre.
Démarrage du conteneur existant
+ /usr/bin/docker start app
Réponse d'erreur du démon : le pilote a échoué lors de la programmation de la connectivité externe sur le point de terminaison app (7336c875bdf9e3f18f08ca0af0a5aad10181ba37508f92c68f87a75637c56583) : Erreur lors du démarrage du proxy utilisateur : listen tcp4 0.0.0.0:443 : bind : l'adresse est déjà utilisée
Erreur : échec du démarrage des conteneurs : app
J’ai déjà configuré ceci dans /opt/discourse/containers/app.yml :
expose:
“8880:80” # http
“8443:443” # https
Il s’agit d’un serveur web où un site fonctionne sous Apache avec HTTPS, donc oui, le port 443 est déjà utilisé. Mais si je configure app.yml pour mapper le port 443 vers 8443, pourquoi reçois-je toujours cette erreur ?
J’ai vu ce document, mais modifier app.yml ne devrait-il pas avoir un effet sur les ports utilisés, ou est-il ignoré ? Discourse est la première application que j’essaie avec un port en quelque sorte « codé en dur » que je ne peux pas changer.
Je n’aime vraiment pas ajouter un autre logiciel entre mes clients et mon site web qui fonctionne parfaitement ; je préférerais mapper un sous-domaine vers Discourse dans Apache.
Et que se passe-t-il si j’obtiens une autre application qui se comporte de cette façon et est forcée de s’exécuter sur le port 443 ?
Oui, mais vous devez exécuter ./launcher rebuild app (ou peut-être ./launcher destroy app; ./launcher start app). Je suppose que vous avez simplement édité le fichier, puis redémarré le conteneur qui avait déjà les ports configurés.