J'ai ipv6 activé sur Docker Host mais il y a un conteneur particulier où ipv6 pose des problèmes. Existe-t-il un moyen de lancer un conteneur sans prise en charge ipv6, soit via un argument de ligne de commande ou une directive dockerfile?
Malheureusement, il n'y a pas: --ipv6
est un indicateur à l'échelle du démon qui ne peut pas être remplacé par conteneur.
C'est un peu délicat. J'ai juste eu le même problème que ce que j'ai fait était d'exécuter le conteneur avec l'ip:
docker run --name YourDockerContainer -p 192.168.99.100:80:80
Cela va démarrer le conteneur sur cette ip: 192.168.99.100
.
A fonctionné pour moi:
docker run -d -i -t --name Django_1.0 --sysctl
net.ipv6.conf.all.disable_ipv6=1 -p 192.168.20.148:8000:8000/tcp -p
192.168.20.148:8000:8000/udp -p 192.168.20.148:3000:3000/tcp -p
192.168.20.148:3000:3000/udp IMAGE_NAME
root:~# netstat -tlp | grep -i docker
tcp 0 0 ip-192-168-20-148.:8000 *:* LISTEN 4598/docker-proxy
tcp 0 0 ip-192-168-20-148.:3000 *:* LISTEN 4642/docker-proxy
Lors de l'exécution de la commande docker à l'aide de --sysctl net.ipv6.conf.all.disable_ipv6=1
option et si elle échoue toujours passer l'argument suivant.
--sysctl net.ipv6.conf.all.disable_ipv6=0