Skip to content

Instantly share code, notes, and snippets.

@atareao
Created November 23, 2021 05:46
Show Gist options
  • Save atareao/1d6efa1570ea85450152db3429ccf75c to your computer and use it in GitHub Desktop.
Save atareao/1d6efa1570ea85450152db3429ccf75c to your computer and use it in GitHub Desktop.
Simple WordPress With or Without Traefik
version: '3'
services:
wp_mariadb:
image: mariadb:latest
container_name: wp_mariadb
restart: unless-stopped
networks:
- internal
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
volumes:
- ./database:/var/lib/mysql
wp_wordpress:
image: wordpress
container_name: wp_wordpress
restart: unless-stopped
networks:
- internal
- proxy
environment:
WORDPRESS_DB_HOST: wp_mariadb
WORDPRESS_DB_USER: ${WORDPRESS_DB_USER}
WORDPRESS_DB_PASSWORD: ${MYSQL_ROOT_PASSWORD}
WORDPRESS_DB_NAME: ${MYSQL_DATABASE}
labels:
- traefik.enable=true
- traefik.http.services.wordpress.loadbalancer.server.port=80
- traefik.http.routers.wordpress-secure.entrypoints=websecure
- traefik.http.routers.wordpress-secure.rule=Host(`${URL}`)
- traefik.http.routers.wordpress-secure.tls=true
- traefik.http.routers.wordpress-secure.tls.certresolver=letsencrypt
networks:
internal:
proxy:
external: true
version: '3'
services:
wp_mariadb:
image: mariadb:latest
container_name: wp_mariadb
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
volumes:
- ./database:/var/lib/mysql
wp_wordpress:
image: wordpress
container_name: wp_wordpress
restart: unless-stopped
ports:
- 8080:80
environment:
WORDPRESS_DB_HOST: wp_mariadb
WORDPRESS_DB_USER: ${WORDPRESS_DB_USER}
WORDPRESS_DB_PASSWORD: ${MYSQL_ROOT_PASSWORD}
WORDPRESS_DB_NAME: ${MYSQL_DATABASE}
networks:
internal:
URL=wp.tuservidor.es
MYSQL_ROOT_PASSWORD=contraseña
MYSQL_DATABASE=wordpress
WORDPRESS_DB_USER=root
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment