services: mysql: image: mysql:8.4 container_name: mydreamjob-mysql restart: unless-stopped environment: MYSQL_DATABASE: mydreamjob MYSQL_USER: mydreamjob MYSQL_PASSWORD: ${MYSQL_PASSWORD} MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} TZ: Asia/Shanghai ports: - "127.0.0.1:3307:3306" volumes: - mysql_data:/var/lib/mysql healthcheck: test: ["CMD-SHELL", "mysqladmin ping -h localhost -uroot -p$$MYSQL_ROOT_PASSWORD --silent"] interval: 10s timeout: 5s retries: 12 start_period: 30s redis: image: redis:7.4-alpine container_name: mydreamjob-redis restart: unless-stopped command: ["redis-server", "--appendonly", "yes"] ports: - "127.0.0.1:6379:6379" volumes: - redis_data:/data healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 12 rabbitmq: image: rabbitmq:3.13-management-alpine container_name: mydreamjob-rabbitmq restart: unless-stopped environment: RABBITMQ_DEFAULT_USER: ${RABBITMQ_USER} RABBITMQ_DEFAULT_PASS: ${RABBITMQ_PASS} RABBITMQ_DEFAULT_VHOST: ${RABBITMQ_VHOST} ports: - "127.0.0.1:5672:5672" - "127.0.0.1:15672:15672" volumes: - rabbitmq_data:/var/lib/rabbitmq healthcheck: test: ["CMD", "rabbitmq-diagnostics", "-q", "ping"] interval: 15s timeout: 10s retries: 12 start_period: 30s volumes: mysql_data: redis_data: rabbitmq_data: