У меня есть это docker-compose.yml
(плюс служба эластичного поиска, которая не имеет отношения к этому вопросу):
services:
swarm-listener:
image: dockerflow/docker-flow-swarm-listener:latest
hostname: swarm-listener
networks:
- elastic
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
environment:
- DF_NOTIFY_CREATE_SERVICE_URL=http://proxy:8080/v1/docker-flow-proxy/reconfigure
- DF_NOTIFY_REMOVE_SERVICE_URL=http://proxy:8080/v1/docker-flow-proxy/remove
deploy:
placement:
constraints: [node.role == manager]
proxy:
image: dockerflow/docker-flow-proxy:latest
hostname: proxy
ports:
- "9200:9201"
networks:
- elastic
environment:
- LISTENER_ADDRESS=swarm-listener
- MODE=swarm
- BIND_PORTS=9200,9201:ssl
letsencrypt-companion:
image: hamburml/docker-flow-letsencrypt:latest
networks:
- elastic
environment:
- DOMAIN_1=('something.example.com')
- CERTBOT_EMAIL=foo@example.com
- PROXY_ADDRESS=proxy
- CERTBOT_CRON_RENEW=('0 3 * * *' '0 15 * * *')
volumes:
- "/etc/letsencrypt:/etc/letsencrypt"
deploy:
labels:
- com.df.servicePath=/.well-known/acme-challenge
- com.df.notify=true
- com.df.distribute=true
- com.df.port=9200
placement:
constraints: [node.role == manager]
replicas: 1
Есть несколько проблем:
- Запуск
docker stack deploy --compose-file docker-compose.yml elastic
после изменение файла compose, похоже, мало что дает. Я получаю сообщения «Обновление службыastic_swarm-listener (id: yu2ejcs2hqu52nfppdco6wjus)» для всех четырех определенных служб, но docker ps
говорит, что создано 2 hours ago
, статус Up 2 hours
. - Это может быть следствием 1. но, возможно, мои почти несуществующие знания о docker compose,
lsof -i|grep LISTEN
вообще ничего не показывают в 9201. - Однако эта команда lsof показывает, что dockerd слушает
TCP *:2377
и TCP *:7946
, и я понятия не имею, что это такое. Как я могу сказать, что это такое и как от них избавиться?