Compare commits
122 commits
Author | SHA1 | Date | |
---|---|---|---|
5bb505f981 | |||
87366d1c2c | |||
76a00fe550 | |||
5c1d309031 | |||
a1b37abfa4 | |||
d972604295 | |||
ca9f38487f | |||
9be50f400d | |||
9ea128cb6d | |||
4844eb2991 | |||
20d2209cee | |||
dc20adf31c | |||
916d946453 | |||
797272c65c | |||
dbb7d6783b | |||
07cf768e49 | |||
0b85dfbf1d | |||
0f46fbbd8d | |||
f336ed6129 | |||
13f84e3c0e | |||
0182b6eeab | |||
c7299219d5 | |||
c0940cf984 | |||
7a707813e3 | |||
b57cab0629 | |||
4d642b07a3 | |||
addd986e62 | |||
586aab2bb3 | |||
a691e058d7 | |||
62ef97f56d | |||
5b4afe3ab5 | |||
f32ce44cc5 | |||
64ad65f056 | |||
e9572bfba8 | |||
1641e23a7d | |||
06a27503a4 | |||
d8f9e11a1a | |||
3703321f61 | |||
e21d058ffb | |||
741d886f11 | |||
0fa41e7a09 | |||
396796b45d | |||
5a308eb666 | |||
6c73e01378 | |||
bd72226150 | |||
3087e5dadf | |||
38bb2b83db | |||
2fabaa5625 | |||
7532260511 | |||
ec14673a34 | |||
d987332f67 | |||
28dd27f35e | |||
6d70ee546f | |||
725dd41ac4 | |||
f664cb474a | |||
830613dd95 | |||
00ce739af4 | |||
023ec8a7e8 | |||
a1b6010131 | |||
87c193cc8f | |||
6466d002e0 | |||
09db14c14d | |||
2884c07267 | |||
d30c0233fc | |||
b124c2e08d | |||
1c69935ba3 | |||
0a2b4fc406 | |||
cc8ce7a039 | |||
893a616896 | |||
0291319852 | |||
2a011b70b3 | |||
d70dcb1ce4 | |||
e7709a4557 | |||
093b147893 | |||
2209e73749 | |||
1cb671543b | |||
a3d7f749c7 | |||
6c638ad385 | |||
8697c29c7c | |||
daa8427850 | |||
93bcb5aa13 | |||
af8d2f0b8d | |||
e7fc8a260f | |||
94bd27df0e | |||
9128b3a562 | |||
b07668bca4 | |||
be6664a4f1 | |||
48f4d70b13 | |||
780b9779a8 | |||
19907733d5 | |||
7f33897a97 | |||
5244a263d8 | |||
8d81e50602 | |||
bd557fffe2 | |||
37d9411c94 | |||
767b63184c | |||
8c52c3b949 | |||
ac0486d8d2 | |||
e31a98ef47 | |||
7b87ead2e1 | |||
13c1fb6a77 | |||
fb7a5e6b1c | |||
b9d29987a1 | |||
47b54c4715 | |||
cddd94bf65 | |||
2e0a95c0fd | |||
44f705b08d | |||
eef5a4929d | |||
eb5dbcc27f | |||
c6209141b7 | |||
94cd691564 | |||
1321464137 | |||
7e16f205c3 | |||
7132b2fccd | |||
3388f8a2f5 | |||
88b8e1846e | |||
2a4e8d3d7d | |||
8624d78f5f | |||
a0bcf2ea41 | |||
e6a4b72f56 | |||
05df24237f | |||
0b03eb7d82 |
22 changed files with 198 additions and 137 deletions
compute-1-mep
conduwuit
forgejo
renovate
restic
searx
traefik-kop
wallabag
compute-2-mep
gitlab
mastodon
restic
traefik-kop
vaultwarden
woodpecker
compute-gra/traefik
compute-vel/traefik
internals
semaphore
traefik-kop
wikijs
woodpecker
|
@ -1,75 +0,0 @@
|
||||||
# conduwuit - Behind Traefik Reverse Proxy
|
|
||||||
|
|
||||||
services:
|
|
||||||
homeserver:
|
|
||||||
### If you already built the conduduwit image with 'docker build' or want to use the Docker Hub image,
|
|
||||||
### then you are ready to go.
|
|
||||||
image: girlbossceo/conduwuit:v0.5.0-rc3-b6e9dc3d98704c56027219d3775336910a0136c6
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
|
||||||
- db:/var/lib/conduwuit
|
|
||||||
#- ./conduwuit.toml:/etc/conduwuit.toml
|
|
||||||
ports:
|
|
||||||
- 6167:6167
|
|
||||||
networks:
|
|
||||||
- proxy
|
|
||||||
environment:
|
|
||||||
CONDUWUIT_SERVER_NAME: matrix.gnous.eu
|
|
||||||
CONDUWUIT_DATABASE_PATH: /var/lib/conduwuit
|
|
||||||
CONDUWUIT_PORT: 6167 # pas touche, c'est le port de Docker
|
|
||||||
CONDUWUIT_MAX_REQUEST_SIZE: 20000000 # in bytes, ~20 MB
|
|
||||||
CONDUWUIT_ALLOW_REGISTRATION: 'true'
|
|
||||||
CONDUWUIT_ALLOW_FEDERATION: 'true'
|
|
||||||
CONDUWUIT_ALLOW_CHECK_FOR_UPDATES: 'true'
|
|
||||||
CONDUWUIT_TRUSTED_SERVERS: '["matrix.org"]'
|
|
||||||
CONDUWUIT_LOG: warn,state_res=warn
|
|
||||||
CONDUWUIT_ADDRESS: 0.0.0.0 # because in a container
|
|
||||||
env_file:
|
|
||||||
- path: .env
|
|
||||||
required: false
|
|
||||||
|
|
||||||
#cpuset: "0-4" # Uncomment to limit to specific CPU cores
|
|
||||||
ulimits: # conduwuit uses quite a few file descriptors, and on some systems it defaults to 1024, so you can tell docker to increase it
|
|
||||||
nofile:
|
|
||||||
soft: 1048567
|
|
||||||
hard: 1048567
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.routers.mastodon-web.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.mastodon-web.rule=Host(`matrix.gnous.eu`)"
|
|
||||||
- "traefik.http.routers.mastodon-web.middlewares=proxyHeader@file,proxyError@file"
|
|
||||||
|
|
||||||
# volé depuis https://community.traefik.io/t/setting-up-conduit-matrix-server-with-traefik/19394
|
|
||||||
- "traefik.http.routers.to-conduit.middlewares=cors-headers@docker"
|
|
||||||
- "traefik.http.middlewares.cors-headers.headers.accessControlAllowOriginList=*"
|
|
||||||
- "traefik.http.middlewares.cors-headers.headers.accessControlAllowHeaders=Origin, X-Requested-With, Content-Type, Accept, Authorization"
|
|
||||||
- "traefik.http.middlewares.cors-headers.headers.accessControlAllowMethods=GET, POST, PUT, DELETE, OPTIONS"
|
|
||||||
|
|
||||||
|
|
||||||
### Uncomment if you want to use your own Element-Web App.
|
|
||||||
### Note: You need to provide a config.json for Element and you also need a second
|
|
||||||
### Domain or Subdomain for the communication between Element and conduwuit
|
|
||||||
### Config-Docs: https://github.com/vector-im/element-web/blob/develop/docs/config.md
|
|
||||||
#element-web:
|
|
||||||
# image: vectorim/element-web:latest
|
|
||||||
# restart: unless-stopped
|
|
||||||
# #volumes:
|
|
||||||
# # - ./element_config.json:/app/config.json
|
|
||||||
# networks:
|
|
||||||
# - proxy
|
|
||||||
# ports:
|
|
||||||
# - 3000:80
|
|
||||||
# depends_on:
|
|
||||||
# - homeserver
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
db:
|
|
||||||
driver: local
|
|
||||||
|
|
||||||
networks:
|
|
||||||
# This is the network Traefik listens to, if your network has a different
|
|
||||||
# name, don't forget to change it here and in the docker-compose.override.yml
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
||||||
|
|
||||||
# vim: ts=2:sw=2:expandtab
|
|
|
@ -9,7 +9,7 @@ volumes:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
server:
|
server:
|
||||||
image: codeberg.org/forgejo/forgejo:10.0.1
|
image: codeberg.org/forgejo/forgejo:12.0.1
|
||||||
restart: always
|
restart: always
|
||||||
container_name: forgejo
|
container_name: forgejo
|
||||||
env_file:
|
env_file:
|
||||||
|
@ -82,7 +82,7 @@ services:
|
||||||
depends_on:
|
depends_on:
|
||||||
- cache
|
- cache
|
||||||
cache:
|
cache:
|
||||||
image: "redis:7-alpine"
|
image: "redis:8-alpine"
|
||||||
restart: always
|
restart: always
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "redis-cli", "ping"]
|
test: ["CMD", "redis-cli", "ping"]
|
||||||
|
|
|
@ -4,7 +4,7 @@ networks:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
renovate:
|
renovate:
|
||||||
image: ghcr.io/renovatebot/renovate:39.185.0-full
|
image: ghcr.io/renovatebot/renovate:41.43.2-full
|
||||||
restart: always
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
- LOG_LEVEL=info
|
- LOG_LEVEL=info
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
services:
|
services:
|
||||||
backup:
|
backup:
|
||||||
image: mazzolino/restic:1.7.2
|
image: mazzolino/restic:1.8.0
|
||||||
hostname: docker
|
hostname: docker
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
|
@ -31,7 +31,7 @@ services:
|
||||||
- ./ssh:/run/secrets/.ssh:ro
|
- ./ssh:/run/secrets/.ssh:ro
|
||||||
|
|
||||||
prune:
|
prune:
|
||||||
image: mazzolino/restic:1.7.2
|
image: mazzolino/restic:1.8.0
|
||||||
hostname: docker
|
hostname: docker
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
|
|
|
@ -8,7 +8,7 @@ volumes:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
server:
|
server:
|
||||||
image: "searxng/searxng:2025.1.6-6dab7fe78"
|
image: "searxng/searxng:2025.4.24-c6c6d3027"
|
||||||
depends_on:
|
depends_on:
|
||||||
- "redis"
|
- "redis"
|
||||||
environment:
|
environment:
|
||||||
|
@ -37,7 +37,7 @@ services:
|
||||||
- "traefik.http.routers.searx.rule=Host(`searx.gnous.eu`)"
|
- "traefik.http.routers.searx.rule=Host(`searx.gnous.eu`)"
|
||||||
- "traefik.http.routers.searx.middlewares=proxyHeader@file,proxyError@file"
|
- "traefik.http.routers.searx.middlewares=proxyHeader@file,proxyError@file"
|
||||||
redis:
|
redis:
|
||||||
image: "redis:7.4-alpine"
|
image: "redis:8.0-alpine"
|
||||||
command: 'redis-server --save "" --appendonly "no"'
|
command: 'redis-server --save "" --appendonly "no"'
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "redis-cli", "ping"]
|
test: ["CMD", "redis-cli", "ping"]
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
services:
|
services:
|
||||||
traefik-kop:
|
traefik-kop:
|
||||||
image: "ghcr.io/jittering/traefik-kop:0.14"
|
image: "ghcr.io/jittering/traefik-kop:0.17"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
|
@ -8,7 +8,7 @@ volumes:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
wallabag:
|
wallabag:
|
||||||
image: wallabag/wallabag:2.6.10
|
image: wallabag/wallabag:2.6.13
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- SYMFONY__ENV__DATABASE_DRIVER=pdo_pgsql
|
- SYMFONY__ENV__DATABASE_DRIVER=pdo_pgsql
|
||||||
|
|
|
@ -12,7 +12,7 @@ volumes:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
gitlab:
|
gitlab:
|
||||||
image: gitlab/gitlab-ce:17.9.1-ce.0
|
image: gitlab/gitlab-ce:18.2.1-ce.0
|
||||||
container_name: gitlab
|
container_name: gitlab
|
||||||
restart: always
|
restart: always
|
||||||
hostname: "gitlab.gnous.eu"
|
hostname: "gitlab.gnous.eu"
|
||||||
|
|
|
@ -19,7 +19,7 @@ SMTP_FROM_ADDRESS=Mastodon <service@gnous.eu>
|
||||||
S3_ENABLED=true
|
S3_ENABLED=true
|
||||||
S3_BUCKET=gnoustoot
|
S3_BUCKET=gnoustoot
|
||||||
S3_REGION=fr-par
|
S3_REGION=fr-par
|
||||||
S3_HOSTNAME=obiwan.gnous.eu
|
S3_HOSTNAME=cdn.gnous.eu
|
||||||
S3_ENDPOINT=https://s3.fr-par.scw.cloud
|
S3_ENDPOINT=https://s3.fr-par.scw.cloud
|
||||||
|
|
||||||
ES_ENABLED=false
|
ES_ENABLED=false
|
|
@ -5,7 +5,7 @@ networks:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
redis:
|
redis:
|
||||||
image: redis:7-alpine
|
image: redis:8-alpine
|
||||||
restart: always
|
restart: always
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "redis-cli", "ping"]
|
test: ["CMD", "redis-cli", "ping"]
|
||||||
|
@ -13,7 +13,7 @@ services:
|
||||||
- mastodon
|
- mastodon
|
||||||
|
|
||||||
web:
|
web:
|
||||||
image: ghcr.io/mastodon/mastodon:v4.3.4
|
image: ghcr.io/mastodon/mastodon:v4.4.2
|
||||||
restart: always
|
restart: always
|
||||||
env_file:
|
env_file:
|
||||||
- path: .env.production
|
- path: .env.production
|
||||||
|
@ -42,7 +42,7 @@ services:
|
||||||
- "ofelia.job-exec.clean-account.command=tootctl accounts cull"
|
- "ofelia.job-exec.clean-account.command=tootctl accounts cull"
|
||||||
|
|
||||||
streaming:
|
streaming:
|
||||||
image: ghcr.io/mastodon/mastodon-streaming:v4.3.4
|
image: ghcr.io/mastodon/mastodon-streaming:v4.4.2
|
||||||
restart: always
|
restart: always
|
||||||
env_file:
|
env_file:
|
||||||
- path: .env.production
|
- path: .env.production
|
||||||
|
@ -65,7 +65,7 @@ services:
|
||||||
- "traefik.http.routers.mastodon-streaming.middlewares=proxyHeader@file,proxyError@file"
|
- "traefik.http.routers.mastodon-streaming.middlewares=proxyHeader@file,proxyError@file"
|
||||||
|
|
||||||
sidekiq:
|
sidekiq:
|
||||||
image: ghcr.io/mastodon/mastodon:v4.3.4
|
image: ghcr.io/mastodon/mastodon:v4.4.2
|
||||||
restart: always
|
restart: always
|
||||||
env_file:
|
env_file:
|
||||||
- path: .env.production
|
- path: .env.production
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
services:
|
services:
|
||||||
backup:
|
backup:
|
||||||
image: mazzolino/restic:1.7.2
|
image: mazzolino/restic:1.8.0
|
||||||
hostname: docker
|
hostname: docker
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
|
@ -28,7 +28,7 @@ services:
|
||||||
- ./ssh:/run/secrets/.ssh:ro
|
- ./ssh:/run/secrets/.ssh:ro
|
||||||
|
|
||||||
prune:
|
prune:
|
||||||
image: mazzolino/restic:1.7.2
|
image: mazzolino/restic:1.8.0
|
||||||
hostname: docker
|
hostname: docker
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
services:
|
services:
|
||||||
traefik-kop:
|
traefik-kop:
|
||||||
image: "ghcr.io/jittering/traefik-kop:0.14"
|
image: "ghcr.io/jittering/traefik-kop:0.17"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
|
@ -8,7 +8,7 @@ volumes:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
vaultwarden:
|
vaultwarden:
|
||||||
image: vaultwarden/server:1.33.2
|
image: vaultwarden/server:1.34.1
|
||||||
container_name: vaultwarden
|
container_name: vaultwarden
|
||||||
environment:
|
environment:
|
||||||
- WEBSOCKET_ENABLED=true # Enable WebSocket notifications.
|
- WEBSOCKET_ENABLED=true # Enable WebSocket notifications.
|
||||||
|
|
|
@ -9,7 +9,7 @@ volumes:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
server:
|
server:
|
||||||
image: woodpeckerci/woodpecker-server:v3.2.0
|
image: woodpeckerci/woodpecker-server:v3.8.0
|
||||||
container_name: woodpecker_server
|
container_name: woodpecker_server
|
||||||
environment:
|
environment:
|
||||||
- WOODPECKER_OPEN=true
|
- WOODPECKER_OPEN=true
|
||||||
|
|
20
compute-gra/traefik/.env
Normal file
20
compute-gra/traefik/.env
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
TRAEFIK_KOP_REDIS_ADDR=[[TRAEFIK_KOP_REDIS_ADDR]]
|
||||||
|
TRAEFIK_KOP_REDIS_PASS=[[TRAEFIK_KOP_REDIS_PASS]]
|
||||||
|
|
||||||
|
# TRACS3 ENV
|
||||||
|
TRACS_AWS_REGION=[[TRACS_AWS_REGION]]
|
||||||
|
TRACS_S3_ENDPOINT=[[TRACS_S3_ENDPOINT]]
|
||||||
|
TRACS_S3_ACCESS_KEY_ID=[[TRACS_S3_ACCESS_KEY_ID]]
|
||||||
|
TRACS_S3_SECRET=[[TRACS_S3_SECRET]]
|
||||||
|
TRACS_CLOSET_BUCKET=[[TRACS_CLOSET_BUCKET]]
|
||||||
|
TRACS_CLOSET_PASSWORD=[[TRACS_CLOSET_PASSWORD]]
|
||||||
|
AWS_CONFIGURE_PLUGINS=awscli_plugin_endpoint
|
||||||
|
AWS_REQUEST_CHECKSUM_CALCULATION=WHEN_REQUIRED
|
||||||
|
AWS_S3_SIGNATURE_VERSION=s3v4
|
||||||
|
TRAEFIK_LOCAL_STORE=/certificates/
|
||||||
|
TRAEFIK_OUTPUT_FILE=/configs/certificates.toml
|
||||||
|
TRAEFIK_CERTIFICATE_DIR=/certificates/
|
||||||
|
|
||||||
|
# TRACING
|
||||||
|
OLTP_HTTP_ENDPOINT=[[OLTP_HTTP_ENDPOINT]]
|
||||||
|
OLTP_HTTP_BASIC_AUTH=[[OLTP_HTTP_BASIC_AUTH]]
|
110
compute-gra/traefik/docker-compose.yaml
Normal file
110
compute-gra/traefik/docker-compose.yaml
Normal file
|
@ -0,0 +1,110 @@
|
||||||
|
services:
|
||||||
|
traefik:
|
||||||
|
image: "traefik:v3.5.0"
|
||||||
|
container_name: "traefik"
|
||||||
|
command:
|
||||||
|
- "--log.level=info"
|
||||||
|
- "--log.maxsize=100"
|
||||||
|
- "--log.maxage=3"
|
||||||
|
|
||||||
|
- "--metrics.prometheus=true"
|
||||||
|
|
||||||
|
- "--entryPoints.web.address=:80"
|
||||||
|
- "--entryPoints.web.http.redirections.entryPoint.to=webpublic"
|
||||||
|
- "--entryPoints.web.http.redirections.entryPoint.scheme=https"
|
||||||
|
- "--entryPoints.web.http.redirections.entryPoint.permanent=true"
|
||||||
|
- "--entryPoints.web.allowACMEByPass=true"
|
||||||
|
- "--entryPoints.websecure.address=:446"
|
||||||
|
- "--entryPoints.websecure.proxyProtocol.trustedIPs=172.0.0.0/8"
|
||||||
|
- "--entryPoints.webpublic.address=:443"
|
||||||
|
- "--entryPoints.webpublic.http.tls=true"
|
||||||
|
- "--entryPoints.webpublic.forwardedHeaders.trustedIPs=172.0.0.0/8"
|
||||||
|
- "--entryPoints.ssh.address=:2222"
|
||||||
|
- "--entryPoints.sshgitlab.address=:2223"
|
||||||
|
|
||||||
|
- "--providers.file.directory=/traefik"
|
||||||
|
- "--providers.redis.endpoints=${TRAEFIK_KOP_REDIS_ADDR}"
|
||||||
|
- "--providers.redis.password=${TRAEFIK_KOP_REDIS_PASS}"
|
||||||
|
|
||||||
|
- "--tracing=true"
|
||||||
|
- "--tracing.otlp=true"
|
||||||
|
- "--tracing.otlp.http=true"
|
||||||
|
- "--tracing.serviceName=traefik"
|
||||||
|
- "--tracing.sampleRate=0.2"
|
||||||
|
- "--tracing.otlp.http.endpoint=${OLTP_HTTP_ENDPOINT}"
|
||||||
|
- "--tracing.otlp.http.headers.Authorization=Basic ${OLTP_HTTP_BASIC_AUTH}"
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- "/var/run/docker.sock:/var/run/docker.sock:ro"
|
||||||
|
- "/etc/traefik/sites:/traefik"
|
||||||
|
- "certificates:/certificates"
|
||||||
|
network_mode: host
|
||||||
|
|
||||||
|
epee:
|
||||||
|
image: "git.gnous.eu/enpls/epee-service:stable"
|
||||||
|
restart: always
|
||||||
|
container_name: "epee"
|
||||||
|
ports:
|
||||||
|
- "5900:5900"
|
||||||
|
networks:
|
||||||
|
- traefik_internal
|
||||||
|
|
||||||
|
varnish:
|
||||||
|
image: varnish:7.7.1
|
||||||
|
restart: always
|
||||||
|
command: -F -a :445,PROXY -f /etc/varnish/default.vcl -T 127.0.0.1:6082 -t 120 -p thread_pool_min=50 -p thread_pool_max=1000 -p thread_pool_timeout=120 -i varnish -s malloc,2048M -n varnish
|
||||||
|
ports:
|
||||||
|
- 445:445
|
||||||
|
volumes:
|
||||||
|
- /etc/varnish:/etc/varnish
|
||||||
|
- "workdir:/var/lib/varnish"
|
||||||
|
|
||||||
|
|
||||||
|
tracs3:
|
||||||
|
image: ghcr.io/outout14/traefik-acme-s3:main
|
||||||
|
env_file:
|
||||||
|
- tracs3.env
|
||||||
|
command:
|
||||||
|
- "sync"
|
||||||
|
volumes:
|
||||||
|
- "/etc/traefik/sites:/configs"
|
||||||
|
- "certificates:/certificates"
|
||||||
|
network_mode: "host"
|
||||||
|
environment:
|
||||||
|
- AWS_REGION=${TRACS_AWS_REGION}
|
||||||
|
- AWS_DEFAULT_REGION=${TRACS_AWS_REGION}
|
||||||
|
- AWS_ENDPOINT_URL=${TRACS_S3_ENDPOINT}
|
||||||
|
- AWS_S3_ENDPOINT=${TRACS_S3_ENDPOINT}
|
||||||
|
- AWS_S3API_ENDPOINT=${TRACS_S3_ENDPOINT}
|
||||||
|
|
||||||
|
- AWS_ACCESS_KEY_ID=${TRACS_S3_ACCESS_KEY_ID}
|
||||||
|
- AWS_SECRET_ACCESS_KEY=${TRACS_S3_SECRET}
|
||||||
|
|
||||||
|
- CLOSET_BUCKET=${TRACS_CLOSET_BUCKET}
|
||||||
|
- CLOSET_PASSWORD=${TRACS_CLOSET_PASSWORD}
|
||||||
|
|
||||||
|
tracs3-certificate-sync:
|
||||||
|
image: mcuadros/ofelia:latest
|
||||||
|
restart: always
|
||||||
|
depends_on:
|
||||||
|
tracs3:
|
||||||
|
condition: service_completed_successfully
|
||||||
|
command: daemon --docker
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||||
|
labels:
|
||||||
|
ofelia.job-run.certificate-rotate.schedule: "@every 10m"
|
||||||
|
ofelia.job-run.certificate-rotate.command: "sh -c 'docker restart front-http-par-tracs3-1'"
|
||||||
|
ofelia.job-run.certificate-rotate.image: "docker:cli"
|
||||||
|
ofelia.job-run.certificate-rotate.volume: "/var/run/docker.sock:/var/run/docker.sock"
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
certificates:
|
||||||
|
workdir:
|
||||||
|
driver: local
|
||||||
|
driver_opts:
|
||||||
|
type: tmpfs
|
||||||
|
device: tmpfs
|
||||||
|
networks:
|
||||||
|
traefik_internal:
|
||||||
|
enable_ipv6: true
|
|
@ -13,4 +13,8 @@ AWS_REQUEST_CHECKSUM_CALCULATION=WHEN_REQUIRED
|
||||||
AWS_S3_SIGNATURE_VERSION=s3v4
|
AWS_S3_SIGNATURE_VERSION=s3v4
|
||||||
TRAEFIK_LOCAL_STORE=/certificates/
|
TRAEFIK_LOCAL_STORE=/certificates/
|
||||||
TRAEFIK_OUTPUT_FILE=/configs/certificates.toml
|
TRAEFIK_OUTPUT_FILE=/configs/certificates.toml
|
||||||
TRAEFIK_CERTIFICATE_DIR=/certificates/
|
TRAEFIK_CERTIFICATE_DIR=/certificates/
|
||||||
|
|
||||||
|
# TRACING
|
||||||
|
OLTP_HTTP_ENDPOINT=[[OLTP_HTTP_ENDPOINT]]
|
||||||
|
OLTP_HTTP_BASIC_AUTH=[[OLTP_HTTP_BASIC_AUTH]]
|
|
@ -1,10 +1,7 @@
|
||||||
services:
|
services:
|
||||||
traefik:
|
traefik:
|
||||||
image: "traefik:v3.3"
|
image: "traefik:v3.5.0"
|
||||||
container_name: "traefik"
|
container_name: "traefik"
|
||||||
depends_on:
|
|
||||||
tracs3:
|
|
||||||
condition: service_completed_successfully
|
|
||||||
command:
|
command:
|
||||||
- "--log.level=info"
|
- "--log.level=info"
|
||||||
- "--log.maxsize=100"
|
- "--log.maxsize=100"
|
||||||
|
@ -12,57 +9,57 @@ services:
|
||||||
|
|
||||||
- "--metrics.prometheus=true"
|
- "--metrics.prometheus=true"
|
||||||
|
|
||||||
- "--providers.docker=true"
|
|
||||||
- "--providers.docker.exposedbydefault=false"
|
|
||||||
|
|
||||||
- "--entryPoints.web.address=:80"
|
- "--entryPoints.web.address=:80"
|
||||||
- "--entryPoints.name.allowACMEByPass=true"
|
- "--entryPoints.web.http.redirections.entryPoint.to=webpublic"
|
||||||
- "--entryPoints.websecure.address=:443"
|
- "--entryPoints.web.http.redirections.entryPoint.scheme=https"
|
||||||
- "--entryPoints.websecure.http3"
|
- "--entryPoints.web.http.redirections.entryPoint.permanent=true"
|
||||||
- "--entryPoints.websecure.http.tls=true"
|
- "--entryPoints.web.allowACMEByPass=true"
|
||||||
|
- "--entryPoints.websecure.address=:446"
|
||||||
|
- "--entryPoints.websecure.proxyProtocol.trustedIPs=172.0.0.0/8"
|
||||||
|
- "--entryPoints.webpublic.address=:443"
|
||||||
|
- "--entryPoints.webpublic.http.tls=true"
|
||||||
|
- "--entryPoints.webpublic.forwardedHeaders.trustedIPs=172.0.0.0/8"
|
||||||
- "--entryPoints.ssh.address=:2222"
|
- "--entryPoints.ssh.address=:2222"
|
||||||
- "--entryPoints.sshgitlab.address=:2223"
|
- "--entryPoints.sshgitlab.address=:2223"
|
||||||
|
|
||||||
- "--providers.docker=true"
|
|
||||||
- "--providers.file.directory=/traefik"
|
- "--providers.file.directory=/traefik"
|
||||||
- "--providers.redis.endpoints=${TRAEFIK_KOP_REDIS_ADDR}"
|
- "--providers.redis.endpoints=${TRAEFIK_KOP_REDIS_ADDR}"
|
||||||
- "--providers.redis.password=${TRAEFIK_KOP_REDIS_PASS}"
|
- "--providers.redis.password=${TRAEFIK_KOP_REDIS_PASS}"
|
||||||
ports:
|
|
||||||
- target: 80
|
- "--tracing=true"
|
||||||
published: 80
|
- "--tracing.otlp=true"
|
||||||
protocol: tcp
|
- "--tracing.otlp.http=true"
|
||||||
mode: host
|
- "--tracing.serviceName=traefik"
|
||||||
- target: 443
|
- "--tracing.sampleRate=0.2"
|
||||||
published: 443
|
- "--tracing.otlp.http.endpoint=${OLTP_HTTP_ENDPOINT}"
|
||||||
protocol: tcp
|
- "--tracing.otlp.http.headers.Authorization=Basic ${OLTP_HTTP_BASIC_AUTH}"
|
||||||
mode: host
|
restart: always
|
||||||
- target: 443
|
|
||||||
published: 443
|
|
||||||
protocol: udp
|
|
||||||
mode: host
|
|
||||||
- target: 2222
|
|
||||||
published: 2222
|
|
||||||
protocol: tcp
|
|
||||||
mode: host
|
|
||||||
- target: 2223
|
|
||||||
published: 2223
|
|
||||||
protocol: tcp
|
|
||||||
mode: host
|
|
||||||
volumes:
|
volumes:
|
||||||
- "/var/run/docker.sock:/var/run/docker.sock:ro"
|
- "/var/run/docker.sock:/var/run/docker.sock:ro"
|
||||||
- "/etc/traefik/sites:/traefik"
|
- "/etc/traefik/sites:/traefik"
|
||||||
- "certificates:/certificates"
|
- "certificates:/certificates"
|
||||||
networks:
|
network_mode: host
|
||||||
- traefik_internal
|
|
||||||
|
epee:
|
||||||
epee:
|
|
||||||
image: "git.gnous.eu/enpls/epee-service:stable"
|
image: "git.gnous.eu/enpls/epee-service:stable"
|
||||||
|
restart: always
|
||||||
container_name: "epee"
|
container_name: "epee"
|
||||||
ports:
|
ports:
|
||||||
- "5900:5900"
|
- "5900:5900"
|
||||||
networks:
|
networks:
|
||||||
- traefik_internal
|
- traefik_internal
|
||||||
|
|
||||||
|
varnish:
|
||||||
|
image: varnish:7.7.1
|
||||||
|
restart: always
|
||||||
|
command: -F -a :445,PROXY -f /etc/varnish/default.vcl -T 127.0.0.1:6082 -t 120 -p thread_pool_min=50 -p thread_pool_max=1000 -p thread_pool_timeout=120 -i varnish -s malloc,2048M -n varnish
|
||||||
|
ports:
|
||||||
|
- 445:445
|
||||||
|
volumes:
|
||||||
|
- /etc/varnish:/etc/varnish
|
||||||
|
- "workdir:/var/lib/varnish"
|
||||||
|
|
||||||
|
|
||||||
tracs3:
|
tracs3:
|
||||||
image: ghcr.io/outout14/traefik-acme-s3:main
|
image: ghcr.io/outout14/traefik-acme-s3:main
|
||||||
env_file:
|
env_file:
|
||||||
|
@ -103,6 +100,11 @@ services:
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
certificates:
|
certificates:
|
||||||
|
workdir:
|
||||||
|
driver: local
|
||||||
|
driver_opts:
|
||||||
|
type: tmpfs
|
||||||
|
device: tmpfs
|
||||||
networks:
|
networks:
|
||||||
traefik_internal:
|
traefik_internal:
|
||||||
enable_ipv6: true
|
enable_ipv6: true
|
|
@ -15,7 +15,7 @@ services:
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
ports:
|
||||||
- 8085:3000
|
- 8085:3000
|
||||||
image: semaphoreui/semaphore:v2.12.14
|
image: semaphoreui/semaphore:v2.15.4
|
||||||
env_file:
|
env_file:
|
||||||
- path: .env
|
- path: .env
|
||||||
required: false
|
required: false
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
services:
|
services:
|
||||||
traefik-kop:
|
traefik-kop:
|
||||||
image: "ghcr.io/jittering/traefik-kop:0.14"
|
image: "ghcr.io/jittering/traefik-kop:0.17"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
|
@ -11,7 +11,7 @@ services:
|
||||||
- db-data:/var/lib/postgresql/data
|
- db-data:/var/lib/postgresql/data
|
||||||
|
|
||||||
server:
|
server:
|
||||||
image: ghcr.io/requarks/wiki:2.5.306
|
image: ghcr.io/requarks/wiki:2.5.307
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
environment:
|
environment:
|
||||||
|
|
|
@ -10,7 +10,7 @@ volumes:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
server:
|
server:
|
||||||
image: woodpeckerci/woodpecker-server:v3.2.0
|
image: woodpeckerci/woodpecker-server:v3.8.0
|
||||||
container_name: woodpecker_server
|
container_name: woodpecker_server
|
||||||
environment:
|
environment:
|
||||||
- WOODPECKER_OPEN=false
|
- WOODPECKER_OPEN=false
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue