Maison  >  Article  >  Opération et maintenance  >  Comment changer le port mappé par Docker

Comment changer le port mappé par Docker

王林
王林original
2020-03-24 11:18:524044parcourir

Comment changer le port mappé par Docker

1. Modifiez le fichier de configuration du conteneur pour changer le port ;

docker run 运行启动时  -p 可以指定容器启动映射端口 (0.0.0.0:18080 8080)

peut modifier le fichier de configuration pour apporter des modifications (vous devez redémarrer le service Docker ; pour prendre effet, pas seulement le conteneur. Seulement, il sera toujours écrasé si vous pouvez redémarrer le conteneur)

2 Trouvez le conteneur qui doit changer de port

docker ps

Comment changer le port mappé par Docker<.>

3. Recherchez le fichier de configuration du docker en fonction de l'ID du CONTENEUR ; (Conteneur La configuration du fichier est par défaut /var/lib/docker/containers)

Parce que j'ai modifié l'emplacement de stockage par défaut du docker. (Les informations Docker peuvent afficher les informations Docker)


4. Modifiez la variable d'environnement par défaut de Docker. La configuration par défaut est /var/lib/docker

Ajoutez la configuration système d'environnement par défaut dans le fichier. fichier de démarrage docker" /etc/default/docker " :

Ajouter la configuration du fichier d'environnement :

# vi /usr/lib/systemd/system/docker.service

Ajouter sous [Service]


EnvironmentFile=-/etc/default/docker #添加配置文件

Ajouter

sous [Installer]

EnvironmentFile=-/etc/default/docker

(Tutoriel recommandé :

tutoriel docker)

5 Arrêtez le conteneur

docker stop [ID/name]

6. Arrêtez le service docker

.

systemctl stop docker

7 , éditez et changez le fichier de configuration du conteneur hostconfig.json

config.v2.json Vous ne verrez l'adresse mappée qu'au démarrage du conteneur, il n'est donc pas nécessaire d'opérer.

/data/docker/containers/0731470143a94579b837b295f4c03a5f283e2bc1b0be746e7da451b9eb817120/hostconfig.json
容器配置命名就是 以 CONTAINER ID 容器ID开头的

8. Affichez et modifiez le fichier hostconfig.json

jq . ./hostconfig.json
# jq 查看json 格式文件
# 更改 HostPort 就是映射的宿主机端口。

Comment changer le port mappé par Docker

9. Démarrez le service Docker pour démarrer le conteneur

docker start [ID/NAME]
systemctl start docker 
docker ps
10. Démarrez le conteneur, iptables sera ajouté automatiquement ; exécutez simplement la sauvegarde iptables du serveur. Ou si vous n'êtes pas inquiet, vous pouvez ajouter le port directement :

宿主机添加端口:
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 58080 -j ACCEPT

宿主机 nat 映射:
iptables -A DOCKER ! -i docker0 -p tcp -m tcp --dport 58080 -j DNAT --to-destination 172.16.4.3:8080

Remarque :

Lorsque Docker fonctionne ou ajoute un conteneur, service d'abord iptables save , puis modifiez et ajoutez un redémarrage.

Lors de l'ajout d'un conteneur, il sera mappé au pare-feu par défaut, mais il deviendra invalide après le redémarrage d'iptables, vous devez donc d'abord le sauvegarder, puis le redémarrer.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn