【发布时间】:2020-06-28 19:31:39
【问题描述】:
当我在容器外调用 curl http://localhost:9200 时,它工作正常,但是当我在 php 容器内调用它时,出现错误:curl: (7) Failed to connect to localhost port 9200: Connection refused
docker-compose.yml:
version: '3.4'
services:
php:
build:
context: .
target: sylius_php
cache_from:
- quay.io/sylius/php:latest
- quay.io/sylius/nodejs:latest
- quay.io/sylius/nginx:latest
image: quay.io/sylius/php:latest
container_name: php
environment:
USER_ID: 1000
APP_ENV: ${APP_ENV}
APP_DEBUG: ${APP_DEBUG}
APP_SECRET: ${APP_SECRET}
PHP_DATE_TIMEZONE: ${PHP_DATE_TIMEZONE:-UTC}
volumes:
- .:/srv/sylius:rw,cached
- ./public:/srv/sylius/public:rw,delegated
- public-media:/srv/sylius/public/media:rw
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:6.4.3
container_name: elasticsearch
environment:
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata1:/usr/share/elasticsearch/data
ports:
- 9200:9200
networks:
- esnet
elasticsearch2:
image: docker.elastic.co/elasticsearch/elasticsearch:6.4.3
container_name: elasticsearch2
environment:
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- "discovery.zen.ping.unicast.hosts=elasticsearch"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata2:/usr/share/elasticsearch/data
networks:
- esnet
volumes:
esdata1:
driver: local
esdata2:
driver: local
networks:
esnet:
问题是我需要从我的 php 容器访问 elasticsearch 服务器才能执行某些与 php 相关的命令。
【问题讨论】:
标签: docker elasticsearch sylius