Puncte:2

Docker compose - dezactivați ruta implicită a gateway-ului

drapel us

Este posibil să împiedicați docker să definească ruta implicită atunci când utilizați fișierul docker-compose yaml?

Dacă docker-compose.yaml meu definește rețeaua ipam cu driverul implicit și orice subrețea, seams precum docker (sau docker compose) atribuie automat ruta implicită tabelului de rutare al docker-ului care este atașat la această rețea). Există vreo modalitate de a-l dezactiva?

Michael Hampton avatar
drapel cz
Containerele dumneavoastră nu vor putea comunica cu lumea exterioară. Ești sigur că asta vrei? Bănuiesc că nu este. De ce încerci să faci asta?
Boris avatar
drapel us
@MichaelHampton Containers rulează propriul software de rutare
Michael Hampton avatar
drapel cz
Dintr-o privire rapidă la documente, nu văd nicio modalitate evidentă de a face acest lucru. Poate altcineva va avea o idee bună.
drapel in
Dacă containerele vor rula propriul software de rutare, de ce nu trebuie doar ca un punct de intrare să elimine ruta implicită.
Puncte:0
drapel in

Din pacate, nu.

O cerere de caracteristică similară (#20179) a fost deschis la depozitul GitHub de aproape 6 ani, așa că cred cu adevărat că această caracteristică nu va fi implementată prea curând.

Soluția mea actuală este, similară cu ceea ce a menționat @Zoredache, să adaug un script bash la containerele dvs. și să setați adresa IP dorită a gateway-ului prin variabilele de mediu. Scriptul șterge ruta implicită și o adaugă înapoi cu IP-ul personalizat ca gateway.

Editați | ×: esența scenariului meu:

dacă [ -n "$GW" ]; atunci
    ip route delete default ;
    ip route add default prin $GW;
fi

Dacă doriți să schimbați gateway-ul implicit al containerului, rulați containerul cu variabila de mediu corespunzătoare GW=192.168.0.1 iar scenariul se ocupă de restul. În plus, asigurați-vă că includeți scriptul în fie CMDsau PUNCT DE INTRARE din Dockerfile
NOTĂ: Necesită iproute2 pachet.

Poate că nu este cea mai frumoasă soluție, dar își face treaba.

Paul avatar
drapel cn
Bun venit la Server Fault! Se pare că ați putea avea o soluție viabilă la întrebare. Vă rugăm să luați în considerare [editarea](https://serverfault.com/posts/1084873/edit) răspunsul dvs. pentru a include pașii necesari pentru a rezolva problema. Și nu uitați să faceți [turul site-ului](http://serverfault.com/tour).

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.