[root@8f52078ea4e6 config]# nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
docker容器配置的端口对应关系: 22/tcp, 0.0.0.0:80->80/tcp
Pas sûr, mais cela ne devrait rien avoir à voir avec le mappage des ports de Docker. Le mappage des relations de Docker équivaut à configurer une règle de correspondance de port dans la boîte virtuelle. Cela équivaut à transférer le port externe vers. le conteneur interne dans le port.
Votre erreur devrait donc être que le port interne de Docker est occupé. Essayez lsof -i :80 et voyez
Quel miroir utilisez-vous ?
.S'il s'agit du nginx officiel, le processus nginx a déjà été démarré. À ce stade, vous ne pouvez bien sûr pas en démarrer un autre sur 80
Le sujet peut entrer dans l'instance du conteneur Docker de nginx et vérifier si nginx a été démarré :
S'il a déjà été démarré, il n'est pas nécessaire de le redémarrer
Vous êtes déjà dans le conteneur. Une fois votre conteneur nginx démarré, le port 80 est déjà actif. Si vous exécutez nginx, il doit montrer qu'il est occupé.