我正在尝试将覆盖网络与docker-compose up
一起使用(在群模式下(,因为我也需要一些其他群来连接到该网络。
我收到此错误:
错误:对于无法启动服务的elk_elasticsearch_1 弹性搜索:连接到网络失败,请确保您的网络选项正确并检查管理器日志:已超过上下文截止时间
错误:对于 elasticsearch 无法启动服务 弹性搜索:连接到网络失败,请确保您的网络选项正确并检查管理器日志:已超过上下文截止时间
错误:启动项目时遇到错误。
这是我的码头工人作曲:
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和另一台服务器上完美运行,但它在我需要它的一台服务器上不起作用。有什么方法可以获取有关正在发生的事情的更多信息吗?
也许您还需要使用子网参数、网关、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
我通过从 snap 卸载 docker 并使用apt
使用这些命令重新安装来解决我的问题;
sudo snap remove docker
sudo dpkg --configure -a
sudo apt update -y
sudo apt install docker.io
sudo reboot
之后,我能够成功创建我的网络。
我执行dpkg
和update
命令以确保我的系统干净,可以重新安装。