services: db: image: ${DOCKER_REGISTRY:-}mariadb:10.6.4-focal command: --default-authentication-plugin=mysql_native_password volumes: - db_data:/var/lib/mysql secrets: - wordpress_db_password - wordpress_root_db_password environment: MYSQL_ROOT_PASSWORD: wordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD_FILE: /run/secrets/wordpress_db_password MYSQL_HOST: '%' expose: - 3306 - 33060 deploy: replicas: 1 placement: constraints: - node.role == manager wordpress: image: ${DOCKER_REGISTRY:-}wordpress:latest volumes: - wp_data:/var/www/html ports: - target: 80 published: 8098 protocol: tcp mode: ingress secrets: - wordpress_db_password environment: WORDPRESS_DB_HOST: db WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD_FILE: /run/secrets/wordpress_db_password WORDPRESS_DB_NAME: wordpress deploy: replicas: 1 placement: constraints: - node.role == manager volumes: db_data: null wp_data: null secrets: wordpress_db_password: external: true wordpress_root_db_password: external: true