version: '3.7' services: n8n-mysql: image: mysql:latest container_name: n8n-mysql restart: unless-stopped env_file: - .env volumes: - mariadb_data:/var/lib/mysql healthcheck: test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"] interval: 10s timeout: 5s retries: 5 n8n: image: n8nio/n8n container_name: n8n restart: unless-stopped ports: - "5678:5678" env_file: - .env environment: - DB_TYPE=mysql - DB_MYSQL_HOST=n8n-mysql - DB_MARIADB_PORT=3306 - DB_MYSQL_DATABASE=${MYSQL_DATABASE} - DB_MYSQL_USER=${MYSQL_USER} - DB_MYSQL_PASSWORD=${MYSQL_PASSWORD} # The TZ is already in .env but can be explicitly set here if preferred # - TZ=Europe/Budapest volumes: - n8n_data:/home/node/.n8n depends_on: n8n-mysql: condition: service_healthy volumes: mysql_data: n8n_data: