Ich lerne Docker. Ich sehe, dass diese zwei Begriffe mich verwirren lassen. Hier ist zum Beispiel ein Docker-Compose, der zwei Dienste definiert redis
und web-app
.docker-komponieren: Unterschied zwischen Netzwerk und Link
services:
redis:
container_name: redis
image: redis:latest
ports:
- "6379:6379"
networks:
- lognet
app:
container_name: web-app
build:
context: .
dockerfile: Dockerfile
ports:
- "3000:3000"
volumes:
- ".:/webapp"
links:
- redis
networks:
- lognet
networks:
lognet:
driver: bridge
Diese docker-compose
Datei definiert eine Brücke Netzwerk namens LogNet und alle Dienste an dieses Netz angeschlossen werden. Wie ich verstehe, bewirkt diese Aktion, dass diese Dienste andere sehen können. Warum muss der App-Service in diesem Fall noch mit dem Redis-Service verlinkt sein?
Danke
Ich denke @ Trân fragte nach 'links' in docker-compose, die nicht veraltet sind. Nur in 'docker run' Befehlen. https://forums.docker.com/t/are-links-deprecated-in-docker-compose/27348/2 –
Sie sind veraltet, ich habe dies direkt vom Docker verfasst Entwickler vorher verfassen. Die Dokumentation zeigt, dass sie überhaupt nicht mit dem Schwarm-Modus unterstützt werden, und damit sie mit docker arbeiten können, brauchen Sie ein gemeinsames Netzwerk, das sowieso DNS-Unterstützung bietet. https://docs.docker.com/compose/compose-file/#links – BMitch