From 54213cd26f1452667e4f8e16a3146e9c14d57ed7 Mon Sep 17 00:00:00 2001 From: xcad2k <28359525+xcad2k@users.noreply.github.com> Date: Fri, 24 Sep 2021 14:05:19 +0200 Subject: [PATCH] reorganize folders --- .../{management => duplicati}/duplicati.yaml | 0 .../{mediaserver => jellyfin}/jellyfin.yaml | 0 .../nextcloud-npm.yaml | 0 .../nextcloud.yaml | 0 .../{applications => pihole}/pihole.yaml | 0 .../{mediaserver => plex}/plex.yaml | 0 .../{management => portainer}/portainer.yaml | 0 .../{webserver => swag}/swag-mysql.yaml | 0 docker-compose/{webserver => swag}/swag.yaml | 0 .../{management => teleport}/teleport.yaml | 0 docker-compose/traefik/README.md | 0 .../traefik/config/example.traefik.yml | 151 ++++++++++++++++++ docker-compose/traefik/config/traefik.yml | 73 +++++++++ docker-compose/traefik/docker-compose.yml | 19 +++ 14 files changed, 243 insertions(+) rename docker-compose/{management => duplicati}/duplicati.yaml (100%) rename docker-compose/{mediaserver => jellyfin}/jellyfin.yaml (100%) rename docker-compose/{applications => nextcloud}/nextcloud-npm.yaml (100%) rename docker-compose/{applications => nextcloud}/nextcloud.yaml (100%) rename docker-compose/{applications => pihole}/pihole.yaml (100%) rename docker-compose/{mediaserver => plex}/plex.yaml (100%) rename docker-compose/{management => portainer}/portainer.yaml (100%) rename docker-compose/{webserver => swag}/swag-mysql.yaml (100%) rename docker-compose/{webserver => swag}/swag.yaml (100%) rename docker-compose/{management => teleport}/teleport.yaml (100%) create mode 100644 docker-compose/traefik/README.md create mode 100644 docker-compose/traefik/config/example.traefik.yml create mode 100644 docker-compose/traefik/config/traefik.yml create mode 100644 docker-compose/traefik/docker-compose.yml diff --git a/docker-compose/management/duplicati.yaml b/docker-compose/duplicati/duplicati.yaml similarity index 100% rename from docker-compose/management/duplicati.yaml rename to docker-compose/duplicati/duplicati.yaml diff --git a/docker-compose/mediaserver/jellyfin.yaml b/docker-compose/jellyfin/jellyfin.yaml similarity index 100% rename from docker-compose/mediaserver/jellyfin.yaml rename to docker-compose/jellyfin/jellyfin.yaml diff --git a/docker-compose/applications/nextcloud-npm.yaml b/docker-compose/nextcloud/nextcloud-npm.yaml similarity index 100% rename from docker-compose/applications/nextcloud-npm.yaml rename to docker-compose/nextcloud/nextcloud-npm.yaml diff --git a/docker-compose/applications/nextcloud.yaml b/docker-compose/nextcloud/nextcloud.yaml similarity index 100% rename from docker-compose/applications/nextcloud.yaml rename to docker-compose/nextcloud/nextcloud.yaml diff --git a/docker-compose/applications/pihole.yaml b/docker-compose/pihole/pihole.yaml similarity index 100% rename from docker-compose/applications/pihole.yaml rename to docker-compose/pihole/pihole.yaml diff --git a/docker-compose/mediaserver/plex.yaml b/docker-compose/plex/plex.yaml similarity index 100% rename from docker-compose/mediaserver/plex.yaml rename to docker-compose/plex/plex.yaml diff --git a/docker-compose/management/portainer.yaml b/docker-compose/portainer/portainer.yaml similarity index 100% rename from docker-compose/management/portainer.yaml rename to docker-compose/portainer/portainer.yaml diff --git a/docker-compose/webserver/swag-mysql.yaml b/docker-compose/swag/swag-mysql.yaml similarity index 100% rename from docker-compose/webserver/swag-mysql.yaml rename to docker-compose/swag/swag-mysql.yaml diff --git a/docker-compose/webserver/swag.yaml b/docker-compose/swag/swag.yaml similarity index 100% rename from docker-compose/webserver/swag.yaml rename to docker-compose/swag/swag.yaml diff --git a/docker-compose/management/teleport.yaml b/docker-compose/teleport/teleport.yaml similarity index 100% rename from docker-compose/management/teleport.yaml rename to docker-compose/teleport/teleport.yaml diff --git a/docker-compose/traefik/README.md b/docker-compose/traefik/README.md new file mode 100644 index 0000000..e69de29 diff --git a/docker-compose/traefik/config/example.traefik.yml b/docker-compose/traefik/config/example.traefik.yml new file mode 100644 index 0000000..594e62b --- /dev/null +++ b/docker-compose/traefik/config/example.traefik.yml @@ -0,0 +1,151 @@ +################################################################ +# +# Configuration sample for Traefik v2. +# +# For Traefik v1: https://github.com/traefik/traefik/blob/v1.7/traefik.sample.toml +# +################################################################ + +################################################################ +# Global configuration +################################################################ +global: + checkNewVersion: true + sendAnonymousUsage: true + +################################################################ +# EntryPoints configuration +################################################################ + +# EntryPoints definition +# +# Optional +# +entryPoints: + web: + address: :80 + + websecure: + address: :443 + +################################################################ +# Traefik logs configuration +################################################################ + +# Traefik logs +# Enabled by default and log to stdout +# +# Optional +# +#log: + # Log level + # + # Optional + # Default: "ERROR" + # +# level: DEBUG + + # Sets the filepath for the traefik log. If not specified, stdout will be used. + # Intermediate directories are created if necessary. + # + # Optional + # Default: os.Stdout + # +# filePath: log/traefik.log + + # Format is either "json" or "common". + # + # Optional + # Default: "common" + # +# format: json + +################################################################ +# Access logs configuration +################################################################ + +# Enable access logs +# By default it will write to stdout and produce logs in the textual +# Common Log Format (CLF), extended with additional fields. +# +# Optional +# +#accessLog: + # Sets the file path for the access log. If not specified, stdout will be used. + # Intermediate directories are created if necessary. + # + # Optional + # Default: os.Stdout + # +# filePath: /path/to/log/log.txt + + # Format is either "json" or "common". + # + # Optional + # Default: "common" + # +# format: json + +################################################################ +# API and dashboard configuration +################################################################ + +# Enable API and dashboard +# +# Optional +# +#api: + # Enable the API in insecure mode + # + # Optional + # Default: false + # +# insecure: true + + # Enabled Dashboard + # + # Optional + # Default: true + # +# dashboard: false + +################################################################ +# Ping configuration +################################################################ + +# Enable ping +#ping: + # Name of the related entry point + # + # Optional + # Default: "traefik" + # +# entryPoint: traefik + +################################################################ +# Docker configuration backend +################################################################ + +#providers: + # Enable Docker configuration backend +# docker: + # Docker server endpoint. Can be a tcp or a unix socket endpoint. + # + # Required + # Default: "unix:///var/run/docker.sock" + # +# endpoint: tcp://10.10.10.10:2375 + + # Default host rule. + # + # Optional + # Default: "Host(`{{ normalize .Name }}`)" + # +# defaultRule: Host(`{{ normalize .Name }}.docker.localhost`) + + # Expose containers by default in traefik + # + # Optional + # Default: true + # +# exposedByDefault: false \ No newline at end of file diff --git a/docker-compose/traefik/config/traefik.yml b/docker-compose/traefik/config/traefik.yml new file mode 100644 index 0000000..90ad923 --- /dev/null +++ b/docker-compose/traefik/config/traefik.yml @@ -0,0 +1,73 @@ +global: + checkNewVersion: true + sendAnonymousUsage: false # true by default + +# (Optional) Log information +# --- +# log: +# level: ERROR # DEBUG, INFO, WARNING, ERROR, CRITICAL +# format: common # common, json, logfmt +# filePath: /var/log/traefik/traefik.log + +# (Optional) Accesslog +# --- +# accesslog: + # format: common # common, json, logfmt + # filePath: /var/log/traefik/access.log + +# (Optional) Enable API and Dashboard +# --- +# api: +# dashboard: +# enabled: true +# insecure: true # Don't do this in production! + +# Entry Points configuration +# --- +entryPoints: + web: + address: :80 + # (Optional) Redirect to HTTPS + # --- + # http: + # redirectons: + # entryPoint: + # to: websecure + # scheme: https + + websecure: + address: :443 + +# Certificates configuration +# --- +# TODO: Custmoize your Cert Resolvers and Domain settings +# +certificatesResolvers: +# LET'S ENCRYPT: +# --- +# + staging: + acme: + email: your-email@example.com # TODO: Change this to your email + storage: /ssl-certs/acme.json + caServer: "https://acme-staging-v02.api.letsencrypt.org/directory" + httpChallenge: + entryPoint: web + production: + acme: + email: your-email@example.com # TODO: Change this to your email + storage: /ssl-certs/acme.json + caServer: "https://acme-v02.api.letsencrypt.org/directory" + httpChallenge: + entryPoint: web + +# Provider Configuration +# --- +# TODO: Customize your Provider Settings if needed +# +providers: +# DOCKER: +# --- +# + docker: + exposedByDefault: false # Default is true diff --git a/docker-compose/traefik/docker-compose.yml b/docker-compose/traefik/docker-compose.yml new file mode 100644 index 0000000..b2ede62 --- /dev/null +++ b/docker-compose/traefik/docker-compose.yml @@ -0,0 +1,19 @@ +version: '3' + +volumes: + traefik-ssl-certs: + driver: local + +services: + traefik: + image: "traefik:v2.5" + container_name: "traefik" + ports: + - "80:80" + - "443:443" + # (Optional) Expose Dashboard + - "8080:8080" # Don't do this in production! + volumes: + - /etc/traefik:/etc/traefik + - traefik-ssl-certs:/ssl-certs + - /var/run/docker.sock:/var/run/docker.sock:ro