forked from coop-cloud/traefik
Compare commits
1 Commits
v2.4.8_1
...
self-signe
Author | SHA1 | Date | |
---|---|---|---|
752d84e337 |
15
.drone.yml
15
.drone.yml
@ -14,19 +14,8 @@ steps:
|
||||
STACK_NAME: traefik
|
||||
LETS_ENCRYPT_ENV: production
|
||||
LETS_ENCRYPT_EMAIL: helo@autonomic.zone
|
||||
TRAEFIK_YML_VERSION: v4
|
||||
FILE_PROVIDER_YML_VERSION: v3
|
||||
ENTRYPOINT_VERSION: v1
|
||||
TRAEFIK_YML_VERSION: v3
|
||||
FILE_PROVIDER_YML_VERSION: v2
|
||||
trigger:
|
||||
branch:
|
||||
- master
|
||||
---
|
||||
kind: pipeline
|
||||
name: recipe release
|
||||
steps:
|
||||
- name: release a new version
|
||||
image: decentral1se/drone-abra:latest
|
||||
settings:
|
||||
command: recipe traefik release
|
||||
deploy_key:
|
||||
from_secret: abra_bot_deploy_key
|
||||
|
28
.env.sample
28
.env.sample
@ -3,24 +3,12 @@ TYPE=traefik
|
||||
DOMAIN=traefik.example.com
|
||||
LETS_ENCRYPT_ENV=production
|
||||
|
||||
LETS_ENCRYPT_DISABLED=0
|
||||
LETS_ENCRYPT_EMAIL=certs@example.com
|
||||
# DASHBOARD_ENABLED=true
|
||||
# WARN, INFO etc.
|
||||
LOG_LEVEL=WARN
|
||||
|
||||
## Enable dns challenge (for wildcard domains)
|
||||
## https://doc.traefik.io/traefik/https/acme/#dnschallenge
|
||||
#LETS_ENCRYPT_DNS_CHALLENGE_ENABLED=1
|
||||
#LETS_ENCRYPT_DNS_CHALLENGE_PROVIDER=ovh
|
||||
|
||||
## OVH configuration
|
||||
# COMPOSE_FILE="compose.yml:compose.ovh.yml"
|
||||
# OVH_ENABLED=1
|
||||
# OVH_APPLICATION_KEY=
|
||||
# OVH_ENDPOINT=
|
||||
# SECRET_OVH_APP_SECRET_VERSION=v1
|
||||
# SECRET_OVH_CONSUMER_KEY=v1
|
||||
|
||||
## Enable Keycloak
|
||||
#COMPOSE_FILE="compose.yml:compose.keycloak.yml"
|
||||
#KEYCLOAK_MIDDLEWARE_ENABLED=1
|
||||
@ -30,24 +18,10 @@ LOG_LEVEL=WARN
|
||||
#SMTP_ENABLED=1
|
||||
|
||||
## Gitea SSH
|
||||
# COMPOSE_FILE="compose.yml:compose.gitea.yml"
|
||||
# GITEA_SSH_ENABLED=1
|
||||
|
||||
## Foodsoft SMTP
|
||||
# COMPOSE_FILE="compose.yml:compose.foodsoft.yml"
|
||||
# FOODSOFT_SMTP_ENABLED=1
|
||||
|
||||
## Peertube RTMP
|
||||
# COMPOSE_FILE="compose.yml:compose.peertube.yml"
|
||||
# PEERTUBE_RTMP_ENABLED=1
|
||||
|
||||
## Secure Scuttlebutt MUXRPC
|
||||
# COMPOSE_FILE="compose.yml:compose.ssb.yml"
|
||||
# SSB_MUXRPC_ENABLED=1
|
||||
|
||||
## MSSQL
|
||||
# COMPOSE_FILE="compose.yml:compose.mssql.yml"
|
||||
# MSSQL_ENABLED=1
|
||||
|
||||
## Host-mode networking
|
||||
#COMPOSE_FILE="compose.yml:compose.host.yml"
|
||||
|
5
abra.sh
5
abra.sh
@ -1,3 +1,2 @@
|
||||
export TRAEFIK_YML_VERSION=v9
|
||||
export FILE_PROVIDER_YML_VERSION=v2
|
||||
export ENTRYPOINT_VERSION=v1
|
||||
export TRAEFIK_YML_VERSION=v7
|
||||
export FILE_PROVIDER_YML_VERSION=v1
|
||||
|
@ -1,7 +0,0 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- FOODSOFT_SMTP_ENABLED
|
||||
ports:
|
||||
- "2525:2525"
|
@ -1,7 +0,0 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- GITEA_SSH_ENABLED
|
||||
ports:
|
||||
- "2222:2222"
|
@ -1,7 +0,0 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- MSSQL_ENABLED
|
||||
ports:
|
||||
- "1433:1433"
|
@ -1,21 +0,0 @@
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- OVH_APPLICATION_KEY
|
||||
- OVH_APPLICATION_SECRET_FILE=/run/secrets/ovh_app_secret
|
||||
- OVH_CONSUMER_KEY_FILE=/run/secrets/ovh_consumer_key
|
||||
- OVH_ENABLED
|
||||
- OVH_ENDPOINT
|
||||
secrets:
|
||||
- ovh_app_secret
|
||||
- ovh_consumer_key
|
||||
|
||||
secrets:
|
||||
ovh_app_secret:
|
||||
name: ${STACK_NAME}_ovh_app_secret_${SECRET_OVH_APP_SECRET_VERSION}
|
||||
external: true
|
||||
ovh_consumer_key:
|
||||
name: ${STACK_NAME}_ovh_consumer_key_${SECRET_OVH_CONSUMER_KEY}
|
||||
external: true
|
@ -1,7 +0,0 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- PEERTUBE_RTMP_ENABLED
|
||||
ports:
|
||||
- "1935:1935"
|
@ -3,7 +3,5 @@ version: "3.8"
|
||||
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- SMTP_ENABLED
|
||||
ports:
|
||||
- "587:587"
|
||||
|
@ -1,7 +0,0 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- SSB_MUXRPC_ENABLED
|
||||
ports:
|
||||
- "8008:8008"
|
26
compose.yml
26
compose.yml
@ -2,12 +2,11 @@ version: "3.8"
|
||||
services:
|
||||
app:
|
||||
image: "traefik:v2.4.8"
|
||||
# Note(decentral1se): *please do not* add any additional ports here.
|
||||
# Doing so could break new installs with port conflicts. Please use
|
||||
# the usual `compose.$app.yml` approach for any additional ports
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
- "2222:2222"
|
||||
- "2525:2525"
|
||||
volumes:
|
||||
- "/var/run/docker.sock:/var/run/docker.sock"
|
||||
- "letsencrypt:/etc/letsencrypt"
|
||||
@ -16,22 +15,22 @@ services:
|
||||
target: /etc/traefik/traefik.yml
|
||||
- source: file_provider_yml
|
||||
target: /etc/traefik/file-provider.yml
|
||||
- source: entrypoint
|
||||
target: /custom-entrypoint.sh
|
||||
mode: 0555
|
||||
networks:
|
||||
- proxy
|
||||
environment:
|
||||
- DASHBOARD_ENABLED
|
||||
- LETS_ENCRYPT_DISABLED
|
||||
- LETS_ENCRYPT_EMAIL
|
||||
- FOODSOFT_SMTP_ENABLED
|
||||
- GITEA_SSH_ENABLED
|
||||
- LOG_LEVEL
|
||||
- SMTP_ENABLED
|
||||
healthcheck:
|
||||
test: ["CMD", "traefik", "healthcheck"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 10
|
||||
start_period: 1m
|
||||
command: traefik
|
||||
entrypoint: /custom-entrypoint.sh
|
||||
deploy:
|
||||
update_config:
|
||||
failure_action: rollback
|
||||
@ -41,7 +40,7 @@ services:
|
||||
- "traefik.http.services.traefik.loadbalancer.server.port=web"
|
||||
- "traefik.http.routers.traefik.rule=Host(`${DOMAIN}`)"
|
||||
- "traefik.http.routers.traefik.entrypoints=web-secure"
|
||||
- "traefik.http.routers.traefik.tls.certresolver=${LETS_ENCRYPT_ENV}"
|
||||
#- "traefik.http.routers.traefik.tls.certresolver=${LETS_ENCRYPT_ENV}"
|
||||
- "traefik.http.routers.traefik.tls.options=default@file"
|
||||
- "traefik.http.routers.traefik.service=api@internal"
|
||||
- "traefik.http.routers.traefik.middlewares=security@file"
|
||||
@ -52,15 +51,10 @@ networks:
|
||||
configs:
|
||||
traefik_yml:
|
||||
name: ${STACK_NAME}_traefik_yml_${TRAEFIK_YML_VERSION}
|
||||
file: traefik.yml.tmpl
|
||||
file: traefik.yml
|
||||
template_driver: golang
|
||||
file_provider_yml:
|
||||
name: ${STACK_NAME}_file_provider_yml_${FILE_PROVIDER_YML_VERSION}
|
||||
file: file-provider.yml.tmpl
|
||||
template_driver: golang
|
||||
entrypoint:
|
||||
name: ${STACK_NAME}_entrypoint_${ENTRYPOINT_VERSION}
|
||||
file: entrypoint.sh.tmpl
|
||||
template_driver: golang
|
||||
file: file-provider.yml
|
||||
volumes:
|
||||
letsencrypt:
|
||||
|
@ -1,10 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
{{ if eq (env "OVH_ENABLED") "1" }}
|
||||
export OVH_CONSUMER_KEY=$(cat "$OVH_CONSUMER_KEY_FILE")
|
||||
export OVH_APPLICATION_SECRET=$(cat "$OVH_APPLICATION_SECRET_FILE")
|
||||
{{ end }}
|
||||
|
||||
/entrypoint.sh "$@"
|
@ -36,22 +36,11 @@ entrypoints:
|
||||
smtp-submission:
|
||||
address: ":587"
|
||||
{{ end }}
|
||||
{{ if eq (env "PEERTUBE_RTMP_ENABLED") "1" }}
|
||||
peertube-rtmp:
|
||||
address: ":1935"
|
||||
{{ end }}
|
||||
{{ if eq (env "SSB_MUXRPC_ENABLED") "1" }}
|
||||
ssb-muxrpc:
|
||||
address: ":8008"
|
||||
{{ end }}
|
||||
{{ if eq (env "MSSQL_ENABLED") "1" }}
|
||||
mssql:
|
||||
address: ":1433"
|
||||
{{ end }}
|
||||
|
||||
ping:
|
||||
entryPoint: web
|
||||
|
||||
{{ if not (eq (env "LETS_ENCRYPT_DISABLED") "1") }}
|
||||
certificatesResolvers:
|
||||
staging:
|
||||
acme:
|
||||
@ -66,7 +55,4 @@ certificatesResolvers:
|
||||
storage: /etc/letsencrypt/production-acme.json
|
||||
httpChallenge:
|
||||
entryPoint: web
|
||||
{{ if eq (env "LETS_ENCRYPT_DNS_CHALLENGE_ENABLED") "1" }}
|
||||
dnsChallenge:
|
||||
provider: {{ (env "LETS_ENCRYPT_DNS_CHALLENGE_PROVIDER") }}
|
||||
{{ end }}
|
||||
{{ end }}
|
Reference in New Issue
Block a user