web-dev-qa-db-fra.com

Docker ne redirige pas le port correctement?

J'essaie d'exécuter une image de menu fixe Gitlab et tout fonctionne correctement, sauf que lorsque je navigue sur le site Web, le port 80 génère "Connexion refusée", mais que le port 8080 parvient à atteindre Gitlab.

Cependant, cela montre que le transfert s'effectue de 8080 à 80 sur le conteneur:

CONTAINER ID    IMAGE               COMMAND              CREATED               STATUS               PORTS                                          NAMES
14b2ac3c0de6    gitlab/gitlab-ee    "/assets/wrapper"    About a minute ago    Up About a minute    0.0.0.0:8080->80/tcp, 0.0.0.0:8443->443/tcp    gitlab

Voici comment je gère le conteneur.

Sudo docker run --detach \
    --publish 8443:443 --publish 8080:80 --publish 2222:22 \
    --name gitlab \
    --restart always \
    --volume /srv/gitlab/config:/etc/gitlab \
    --volume /srv/gitlab/logs:/var/log/gitlab \
    --volume /srv/gitlab/data:/var/opt/gitlab \
    gitlab/gitlab-ee:latest
8
Fadi

Utilisez --publish 80:80 si vous souhaitez accéder au service via le port 80 de l'hôte. Sinon, l'hôte n'écoute rien sur le port 80 et la connexion est refusée. Même chose pour 443. 

Le format est 

 --publish <Host port>:<container port>
12
Matt

Ma solution ressemble à ceci:

docker network create --subnet=172.18.0.0/16 selnet docker run --net selnet --ip 172.18.0.2 -p 0.0.0.0:80:8080 --expose=80 hub

Je peux me connecter à mon conteneur avec localhost: Port ou 172.18.0.2:Port

0
Nils Zenker