En tant que concepteur Web, j'utilise VirtualBox pour configurer des serveurs de travail temporaires pour mes projets. Dernièrement, j'ai essayé de réduire le nombre de machines virtuelles sur mon ordinateur portable (en raison des limites de la capacité SSD) et j'ai pensé que l'apprentissage et l'utilisation de Docker pouvaient être bénéfiques en termes de stockage système, de déploiement du travail fini et de pérennisation de mes compétences . Jusqu'à présent, j'utilisais un adaptateur hôte uniquement en plus de NAT pour me connecter au serveur APM dans ma machine virtuelle à partir de mon hôte (qui est généralement Windows).
Voici le paramètre/etc/network/interfaces que j'utilise normalement:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
# VBOX Host-only adapter
auto eth1
iface eth1 inet static
network 192.168.56.0
address 192.168.56.80
netmask 255.255.255.0
Je pense à l'alias IP pour attribuer plus d'adresses IP à l'adaptateur hôte uniquement (192.168.56.81, 192.168.56.82...
) et acheminer chacun d'eux vers chacun des conteneurs, qui exécutera chacun un de mes projets. Il semble que Docker ait sa propre interface réseau, docker0
, qui n'est pas accessible à partir de la machine hôte VirtualBox. D'après ce que je peux dire, j'ai quelques approches possibles:
Je veux savoir laquelle de ces approches est le moyen le plus viable pour moi de prendre.
Je ne sais pas si ma question est suffisamment claire. Veuillez me faire savoir si je dois fournir plus d'informations afin de répondre à cette question.
À mon avis, pour votre utilisation, vous ne devriez pas avoir à creuser dans la folie des réseaux de dockers.
Je vous conseille d'utiliser le mappage de port lorsque vous exécutez votre conteneur.
Par exemple, supposons que vous avez créé une image Apache
dans docker via votre Dockerfile. Lorsque vous souhaitez exécuter ce conteneur, utilisez le -p
option pour mapper les ports:
Sudo docker run -d -p=80:80 -p=443:443 -P Apache:latest
Ce faisant, le port local 80 sera mappé au port 80 de ce conteneur.
Ainsi, en accédant à http://127.0.0.1 dans votre navigateur, vous accéderez à votre conteneur.
Si le port 80 est déjà utilisé localement, vous pouvez utiliser par exemple le port 8080: -p 8080:80
puis accédez à http://127.0.0.1:808 .
Si vous avez plusieurs projets, vous pouvez utiliser plusieurs ports ou utiliser des hôtes virtuels dans votre conteneur Apache et utiliser l'alias DNS dans /etc/hosts
des hôtes.