I have an LXC container. In this LXC container, I am able to install Docker Compose to run different applications. However, when I created a fresh Docker Compose setup based on the user guide, I could not access the http://management_ip:9000 port. Below, please find my Docker Compose file and provide any comments you may have. Local host can use the CURL to conenct to the 9000. However, 10.18.0.236 cannot and will show connection refuse.
Now, let’s take a look at your Docker Compose file. I’ve formatted it for better readability and added some comments:
version: ‘3’
services:
mongo:
image: mongo:5.0.13
networks:
- graylog
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
environment:
- http.host=0.0.0.0
- transport.host=localhost
- network.host=0.0.0.0
- “ES_JAVA_OPTS=-Dlog4j2.formatMsgNoLookups=true -Xms512m -Xmx512m”
ulimits:
memlock:
soft: -1
hard: -1
deploy:
resources:
limits:
memory: 1g
networks:
- graylog
graylog:
image: graylog/graylog:5.0
environment:
# CHANGE ME (must be at least 16 characters)!
- GRAYLOG_PASSWORD_SECRET=somepasswordpepper
# Password: admin
- GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918
- GRAYLOG_HTTP_EXTERNAL_URI=http://10.18.0.236:9000/
entrypoint: /usr/bin/tini – wait-for-it elasticsearch:9200 – /docker-entrypoint.sh
networks:
- graylog
restart: always
depends_on:
- mongo
- elasticsearch
ports:
# Graylog web interface and REST API
- “9000:9000”
# Syslog TCP
- “1514:1514”
# Syslog UDP
- “1514:1514/udp”
# GELF TCP
- “12201:12201”
# GELF UDP
- “12201:12201/udp”
networks:
graylog:
driver: bridge