Compare commits
17 Commits
self-signe
...
v2.4.8_1
Author | SHA1 | Date | |
---|---|---|---|
661bec4727 | |||
7258b129c4 | |||
bbbdfc272d | |||
2c81622d9a | |||
8ff2f3a294 | |||
2c745416fc | |||
d968028216 | |||
8d309bc7bf | |||
18d8805c99 | |||
bdff19882b | |||
fd9faeb021 | |||
f26557bd40 | |||
2de31afe26 | |||
028ad6ce62 | |||
ede226cea7 | |||
9a1dd29d01 | |||
2428f5fabd |
15
.drone.yml
15
.drone.yml
@ -14,8 +14,19 @@ steps:
|
||||
STACK_NAME: traefik
|
||||
LETS_ENCRYPT_ENV: production
|
||||
LETS_ENCRYPT_EMAIL: helo@autonomic.zone
|
||||
TRAEFIK_YML_VERSION: v3
|
||||
FILE_PROVIDER_YML_VERSION: v2
|
||||
TRAEFIK_YML_VERSION: v4
|
||||
FILE_PROVIDER_YML_VERSION: v3
|
||||
ENTRYPOINT_VERSION: v1
|
||||
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
|
||||
|
27
.env.sample
27
.env.sample
@ -8,6 +8,19 @@ LETS_ENCRYPT_EMAIL=certs@example.com
|
||||
# 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
|
||||
@ -17,10 +30,24 @@ 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,2 +1,3 @@
|
||||
export TRAEFIK_YML_VERSION=v5
|
||||
export FILE_PROVIDER_YML_VERSION=v1
|
||||
export TRAEFIK_YML_VERSION=v9
|
||||
export FILE_PROVIDER_YML_VERSION=v2
|
||||
export ENTRYPOINT_VERSION=v1
|
||||
|
7
compose.foodsoft.yml
Normal file
7
compose.foodsoft.yml
Normal file
@ -0,0 +1,7 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- FOODSOFT_SMTP_ENABLED
|
||||
ports:
|
||||
- "2525:2525"
|
7
compose.gitea.yml
Normal file
7
compose.gitea.yml
Normal file
@ -0,0 +1,7 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- GITEA_SSH_ENABLED
|
||||
ports:
|
||||
- "2222:2222"
|
7
compose.mssql.yml
Normal file
7
compose.mssql.yml
Normal file
@ -0,0 +1,7 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- MSSQL_ENABLED
|
||||
ports:
|
||||
- "1433:1433"
|
21
compose.ovh.yml
Normal file
21
compose.ovh.yml
Normal file
@ -0,0 +1,21 @@
|
||||
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
|
7
compose.peertube.yml
Normal file
7
compose.peertube.yml
Normal file
@ -0,0 +1,7 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- PEERTUBE_RTMP_ENABLED
|
||||
ports:
|
||||
- "1935:1935"
|
@ -3,5 +3,7 @@ version: "3.8"
|
||||
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- SMTP_ENABLED
|
||||
ports:
|
||||
- "587:587"
|
||||
|
7
compose.ssb.yml
Normal file
7
compose.ssb.yml
Normal file
@ -0,0 +1,7 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- SSB_MUXRPC_ENABLED
|
||||
ports:
|
||||
- "8008:8008"
|
22
compose.yml
22
compose.yml
@ -2,11 +2,12 @@ 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"
|
||||
@ -15,20 +16,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
|
||||
- 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
|
||||
@ -49,10 +52,15 @@ networks:
|
||||
configs:
|
||||
traefik_yml:
|
||||
name: ${STACK_NAME}_traefik_yml_${TRAEFIK_YML_VERSION}
|
||||
file: traefik.yml
|
||||
file: traefik.yml.tmpl
|
||||
template_driver: golang
|
||||
file_provider_yml:
|
||||
name: ${STACK_NAME}_file_provider_yml_${FILE_PROVIDER_YML_VERSION}
|
||||
file: file-provider.yml
|
||||
file: file-provider.yml.tmpl
|
||||
template_driver: golang
|
||||
entrypoint:
|
||||
name: ${STACK_NAME}_entrypoint_${ENTRYPOINT_VERSION}
|
||||
file: entrypoint.sh.tmpl
|
||||
template_driver: golang
|
||||
volumes:
|
||||
letsencrypt:
|
||||
|
10
entrypoint.sh.tmpl
Normal file
10
entrypoint.sh.tmpl
Normal file
@ -0,0 +1,10 @@
|
||||
#!/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,6 +36,18 @@ 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
|
||||
@ -54,3 +66,7 @@ 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 }}
|
Reference in New Issue
Block a user