From 8f7fd1730d642e373bf072d382a0d9b4d1287d25 Mon Sep 17 00:00:00 2001
From: David Beniamine <david.beniamine@tetras-libre.fr>
Date: Fri, 11 Mar 2022 10:21:28 +0100
Subject: [PATCH] COMPOSE FILE for traefik

---
 .env.sample        |  4 ++++
 docker-compose.yml | 19 ++-----------------
 ports.yml          |  7 +++++++
 traefik.yml        | 21 +++++++++++++++++++++
 4 files changed, 34 insertions(+), 17 deletions(-)
 create mode 100644 ports.yml
 create mode 100644 traefik.yml

diff --git a/.env.sample b/.env.sample
index a325d3f..5178e59 100644
--- a/.env.sample
+++ b/.env.sample
@@ -1,3 +1,7 @@
+COMPOSE_FILE=docker-compose.yml:ports.yml
+HOST=my.FQDN
+NAME=mywordpress
+WP_PATH=/home/wordpress/html
 DB_USERNAME=wordpress
 DB_PASSWORD=INSERT_RANDOM_PASSWORD_HERE
 DB_DATABASE=wordpress
diff --git a/docker-compose.yml b/docker-compose.yml
index 96191c7..25cef9d 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,12 +1,10 @@
-version: "2.0"
+version: "3.0"
 
 services:
 
     wordpress:
         image: wordpress
         restart: always
-        ports:
-            - 8080:80
         environment:
             WORDPRESS_DB_HOST: db
             WORDPRESS_DB_USER: ${DB_USERNAME}
@@ -22,7 +20,7 @@ services:
                 define('FS_CHMOD_DIR',0775);
                 define('FS_CHMOD_FILE',0664);
         volumes:
-            - "/home/wordpress/html:/var/www/html/"
+            - "${WP_PATH}:/var/www/html/"
 
     db:
         image: mariadb
@@ -34,16 +32,3 @@ services:
             MYSQL_RANDOM_ROOT_PASSWORD: 1
         volumes:
             - "./db:/var/lib/mysql"
-
-    phpmyadmin:
-        image: phpmyadmin/phpmyadmin
-        restart: always
-        ports:
-            - "8081:80"
-        environment:
-            - PMA_HOST=db
-            - UPLOAD_LIMIT=512M
-        depends_on:
-            - db
-        links:
-            - db
diff --git a/ports.yml b/ports.yml
new file mode 100644
index 0000000..d02392a
--- /dev/null
+++ b/ports.yml
@@ -0,0 +1,7 @@
+version: "3.0"
+
+services:
+
+    wordpress:
+        ports:
+            - 8080:80
diff --git a/traefik.yml b/traefik.yml
new file mode 100644
index 0000000..eb735de
--- /dev/null
+++ b/traefik.yml
@@ -0,0 +1,21 @@
+version: "3.0"
+
+services:
+
+    wordpress:
+      labels:
+        - "traefik.enable=true"
+        - "traefik.docker.network=traefik"
+        - "traefik.http.routers.${NAME}.rule=Host(`${HOST}`)"
+        - "traefik.http.routers.${NAME}.tls.certresolver=myresolver"
+        - "traefik.http.routers.${NAME}.entrypoints=web,websecure"
+        - "traefik.http.services.${NAME}.loadbalancer.server.port=80"
+        - "traefik.http.routers.${NAME}.middlewares=hardening@docker"
+      networks:
+        - default
+        - traefik
+
+
+networks:
+  traefik:
+    external: true
-- 
GitLab