services: prosody: build: context: . dockerfile: Dockerfile container_name: prosody-xmpp environment: XMPP_DOMAIN: ${XMPP_DOMAIN} XMPP_USER: ${XMPP_USER} XMPP_PASSWORD: ${XMPP_PASSWORD} MYSQL_HOST: ${MYSQL_HOST:-host.docker.internal} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} MYSQL_DATABASE: ${MYSQL_DATABASE} extra_hosts: - "host.docker.internal:172.17.0.1" ports: - "5222:5222" - "5269:5269" - "5347:5347" - "5280:5280" volumes: - ./data/prosody:/var/lib/prosody - ./logs/prosody:/var/log/prosody - ./data/prosody/configuration:/etc/prosody/conf.d - /etc/letsencrypt/live/xmpp.guschin.info:/etc/prosody/certs/letsencrypt/live/xmpp.guschin.info:ro - /etc/letsencrypt/archive/xmpp.guschin.info:/etc/prosody/certs/letsencrypt/archive/xmpp.guschin.info:ro - /etc/letsencrypt/live/guschin.info:/etc/prosody/certs/letsencrypt/live/guschin.info:ro - /etc/letsencrypt/archive/guschin.info:/etc/prosody/certs/letsencrypt/archive/guschin.info:ro restart: unless-stopped mem_limit: 200M healthcheck: test: ["CMD", "nc", "-z", "localhost", "5222"] interval: 30s timeout: 10s retries: 3 start_period: 40s networks: - prosody networks: prosody: driver: bridge