我正尝试在docker-compose up
(处于群集模式)下使用覆盖网络,因为我还需要其他一些群集才能连接到该网络。
我收到此错误:
错误:针对elk_elasticsearch_1无法启动服务elasticsearch:连接到网络失败,请确保您的网络选项正确,并检查管理器日志:超出了上下文期限
错误:用于elasticsearch无法启动服务elasticsearch:连接到网络失败,请确保您的网络选项正确,并检查管理器日志:超出了上下文期限
错误:启动项目时遇到错误。
这是我的docker-compose:
networks:
elk-network:
attachable: true
driver: overlay
name: elk-network
services:
elasticsearch:
build:
args:
ELK_VERSION: 7.1.1
context: /home/user/elk/elasticsearch
environment:
ELASTIC_PASSWORD: password
ES_JAVA_OPTS: -Xmx256m -Xms256m
networks:
elk-network:
ports:
- published: 9200
target: 9200
- published: 9300
target: 9300
restart: always
volumes:
- /home/user/elk/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml:ro
- /home/user/elk/data:/usr/share/elasticsearch/data:rw
kibana:
build:
args:
ELK_VERSION: 7.1.1
context: /home/user/elk/kibana
depends_on:
- elasticsearch
networks:
elk-network:
ports:
- published: 5601
target: 5601
restart: always
volumes:
- /home/user/elk/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml:ro
version: '3.5'
节点Spec.Availability表示活动。我没有找到关于通过搜索错误来做什么的其他信息。
名为elk-network
的网络实际上显示在docker network ls
2l911valz0a8 elk-network overlay swarm
编辑:从尝试调试中发现的另一件事是,它可以在我的Mac和另一台服务器上完美运行,但在我需要它的一台服务器上却无法运行。我可以通过任何方式获得有关正在发生的事情的更多信息吗?
答案 0 :(得分:0)
也许您还需要使用子网参数,网关,IP范围等。
示例:
docker network create -d overlay \
--subnet=192.168.0.0/16 \
--subnet=192.170.0.0/16 \
--gateway=192.168.0.100 \
--gateway=192.170.0.100 \
--ip-range=192.168.1.0/24 \
--aux-address="my-router=192.168.1.5" --aux-address="my-switch=192.168.1.6" \
--aux-address="my-printer=192.170.1.5" --aux-address="my-nas=192.170.1.6" \
elk-network