Я изучаю докер. Я вижу, что эти два слова заставляют меня смущать. Например, здесь находится сборка докеров, в которой определены две службы redis
и web-app
.docker-compose: разница между сетью и ссылкой
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
Этот docker-compose
файл определяет сетевой мост с именем lognet и все службы будут подключаться к этой сети. Насколько я понимаю, это действие заставляет эти службы видеть других. Итак, почему для службы приложений по-прежнему необходимо связать службу redis в приведенном выше случае.
Thanks
Я думаю, что @ Trân спрашивал о 'ссылках' в docker-compose, которые не устарели. Только в командах 'docker run'. https://forums.docker.com/t/are-links-deprecated-in-docker-compose/27348/2 –
Они устарели, я проверил это непосредственно у докера, создавшего разработчика ранее. Документация показывает, что они вообще не поддерживаются режимом роя, и чтобы заставить их работать с докерером, вам нужна общая сеть, которая в любом случае обеспечивала бы поддержку DNS. https://docs.docker.com/compose/compose-file/#links – BMitch