Compare commits
3 Commits
remove-def
...
iocane-int
| Author | SHA1 | Date | |
|---|---|---|---|
| f07ca33e24 | |||
| 84728d5d88 | |||
| 2fb159d991 |
14
.env.sample
14
.env.sample
@ -1,5 +1,5 @@
|
||||
TYPE=traefik
|
||||
#TIMEOUT=300
|
||||
TIMEOUT=300
|
||||
ENABLE_AUTO_UPDATE=true
|
||||
ENABLE_BACKUPS=true
|
||||
|
||||
@ -176,12 +176,6 @@ COMPOSE_FILE="compose.yml"
|
||||
#COMPOSE_FILE="$COMPOSE_FILE:compose.nextcloud-talk-hpb.yml"
|
||||
#NEXTCLOUD_TALK_HPB_ENABLED=1
|
||||
|
||||
## Anubis
|
||||
#COMPOSE_FILE="$COMPOSE_FILE:compose.anubis.yml"
|
||||
#ANUBIS_COOKIE_DOMAIN=example.com
|
||||
#ANUBIS_DOMAIN=anubis.example.com
|
||||
#ANUBIS_REDIRECT_DOMAINS=
|
||||
#ANUBIS_OG_PASSTHROUGH=true
|
||||
#ANUBIS_OG_EXPIRY_TIME=1h
|
||||
#ANUBIS_OG_CACHE_CONSIDER_HOST=true
|
||||
#ANUBIS_SERVE_ROBOTS_TXT=true
|
||||
## Iocane
|
||||
#COMPOSE_FILE="$COMPOSE_FILE:compose.iocane.yml"
|
||||
#IOCANE_ENABLED=1
|
||||
|
||||
@ -1,15 +0,0 @@
|
||||
---
|
||||
name: "Traefik pull request template"
|
||||
---
|
||||
|
||||
<!--
|
||||
Thank you for doing recipe maintenance work!
|
||||
Please mark all checklist items which are relevant for your changes.
|
||||
Please remove the checklist items which are not relevant for your changes.
|
||||
Feel free to remove this comment.
|
||||
-->
|
||||
|
||||
* [ ] I have deployed and tested my changes
|
||||
* [ ] I have [updated relevant versions in `abra.sh`](https://docs.coopcloud.tech/maintainers/upgrade/#updating-versions-in-the-abrash)
|
||||
* [ ] I have made my environment variable changes [backwards compatible](https://docs.coopcloud.tech/maintainers/upgrade/#backwards-compatible-environment-variable-changes)
|
||||
* [ ] I have added a [release note entry](https://docs.coopcloud.tech/maintainers/upgrade/#creating-new-release-notes)
|
||||
@ -1,32 +1,24 @@
|
||||
# Traefik Recipe Maintenance
|
||||
|
||||
All contributions should be made via a pull request. This is to ensure a
|
||||
certain quality and consistency, that others can rely on.
|
||||
All contributions should be made via a pull request. This is to ensure a certain quality / consistency, that others can rely on.
|
||||
|
||||
|
||||
## Maintainer Responsibilities
|
||||
|
||||
A recipe maintainer has the following responsibilities:
|
||||
|
||||
- Respond to pull requests / issues within a week
|
||||
- Make image security updates within a day
|
||||
- Make image patch / minor updates within a week
|
||||
- Make image major updates within a month
|
||||
- respond to pull requests / issues within a week
|
||||
- make image security updates within a day
|
||||
- make image patch / minor updates within a week
|
||||
- make image major updates within a month
|
||||
|
||||
In order to fullfill these responsibilities a recipe maintainer:
|
||||
- has to watch the repository (to get notifications)
|
||||
- needs to make sure renovate is configured properly
|
||||
|
||||
- Has to watch the repository (to get notifications)
|
||||
- Needs to make sure renovate is configured properly
|
||||
## Merge rules
|
||||
|
||||
## Pull Requests
|
||||
A pull request can be merged if it is approved by at least one maintainer. For pull requests opened by a maintainer they need to be approved by another maintainer.
|
||||
|
||||
A pull request can be merged if it is approved by at least one maintainer. For
|
||||
pull requests opened by a maintainer they need to be approved by another
|
||||
maintainer. Even though it is okay to merge a pull request with one approval, it
|
||||
is always better if all maintainers looked at the pull request and approved it.
|
||||
## Becoming a maintainer
|
||||
|
||||
## Become a maintainer
|
||||
|
||||
Everyone can apply to be a recipe maintainer:
|
||||
1. Watch the repository to always get updates
|
||||
2. Simply add your self to the list in the [README.md](./README.md) and open a new pull request with the change.
|
||||
3. Once the pull request gets merged you will be added to the [traefik maintainers team](https://git.coopcloud.tech/org/coop-cloud/teams/traefik-maintainers).
|
||||
Everyone can apply to be a recipe maintainer. Simply add your self to the list in the [README.md](./README.md) and open a new pull request with the change.
|
||||
|
||||
15
README.md
15
README.md
@ -5,7 +5,7 @@
|
||||
> https://docs.traefik.io
|
||||
|
||||
<!-- metadata -->
|
||||
* **Maintainer**: [@p4u1](https://git.coopcloud.tech/p4u1), [@decentral1se](https://git.coopcloud.tech/decentral1se), [@javielico](https://git.coopcloud.tech/javielico)
|
||||
* **Maintainer**: [@p4u1](https://git.coopcloud.tech/p4u1)
|
||||
* **Status**: `stable`
|
||||
* **Category**: Utilities
|
||||
* **Features**: ?
|
||||
@ -55,17 +55,4 @@ Letsencrypt DNS challenges.
|
||||
Access Token, in which case use compose.gandi-personal-access-token.yml.
|
||||
6. Redeploy Traefik, using e.g. `abra app deploy YOURAPPDOMAIN -f`
|
||||
|
||||
## Blocking scrapers with [Anubis](https://anubis.techaro.lol/)
|
||||
|
||||
Uncomment the lines on the Anubis section of the configuration. Set
|
||||
a domain name for the cookies and a domain that will serve Anubis
|
||||
redirection service. Optionally and for [added
|
||||
security](https://anubis.techaro.lol/docs/admin/configuration/redirect-domains),
|
||||
set a list of the domain names for the apps that are going to be
|
||||
protected.
|
||||
|
||||
After deploying these changes, go to each recipe that supports Anubis
|
||||
and follow the process there. **Enabling Anubis here is not enough for
|
||||
protection your apps.**
|
||||
|
||||
[`abra`]: https://git.autonomic.zone/autonomic-cooperative/abra
|
||||
|
||||
2
abra.sh
2
abra.sh
@ -1,3 +1,3 @@
|
||||
export TRAEFIK_YML_VERSION=v28
|
||||
export FILE_PROVIDER_YML_VERSION=v11
|
||||
export FILE_PROVIDER_YML_VERSION=v10
|
||||
export ENTRYPOINT_VERSION=v5
|
||||
|
||||
@ -1,29 +0,0 @@
|
||||
---
|
||||
version: "3.8"
|
||||
services:
|
||||
app:
|
||||
deploy:
|
||||
labels:
|
||||
- "traefik.http.middlewares.anubis.forwardauth.address=http://anubis:8080/.within.website/x/cmd/anubis/api/check"
|
||||
anubis:
|
||||
image: "ghcr.io/techarohq/anubis:v1.24.0"
|
||||
environment:
|
||||
BIND: ":8080"
|
||||
TARGET: " "
|
||||
REDIRECT_DOMAINS: "${ANUBIS_REDIRECT_DOMAINS}"
|
||||
COOKIE_DOMAIN: "${ANUBIS_COOKIE_DOMAIN}"
|
||||
PUBLIC_URL: "https://${ANUBIS_DOMAIN}"
|
||||
OG_PASSTHROUGH: "${ANUBIS_OG_PASSTHROUGH}"
|
||||
OG_EXPIRY_TIME: "${ANUBIS_OG_EXPIRY_TIME}"
|
||||
OG_CACHE_CONSIDER_HOST: "${ANUBIS_OG_CACHE_CONSIDER_HOST}"
|
||||
SERVE_ROBOTS_TXT: "${ANUBIS_SERVE_ROBOTS_TXT}"
|
||||
networks:
|
||||
- proxy
|
||||
deploy:
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.anubis.rule=Host(`${ANUBIS_DOMAIN}`)"
|
||||
- "traefik.http.routers.anubis.tls.certresolver=${LETS_ENCRYPT_ENV}"
|
||||
- "traefik.http.routers.anubis.entrypoints=web-secure"
|
||||
- "traefik.http.services.anubis.loadbalancer.server.port=8080"
|
||||
- "traefik.http.routers.anubis.service=anubis"
|
||||
19
compose.iocane.yml
Normal file
19
compose.iocane.yml
Normal file
@ -0,0 +1,19 @@
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
app:
|
||||
environment:
|
||||
- IOCANE_ENABLED
|
||||
|
||||
iocane:
|
||||
image: git.madhouse-project.org/iocaine/iocaine:latest
|
||||
ports:
|
||||
- '42069:42069'
|
||||
environment:
|
||||
- RUST_LOG=iocaine=warn
|
||||
labels:
|
||||
- 'traefik.http.middlewares.iocaine.plugin.iocaine.iocaineHttpUrl=http://iocaine:42069'
|
||||
- 'traefik.http.middlewares.iocaine.plugin.iocaine.methods=GET,HEAD'
|
||||
networks:
|
||||
- internal
|
||||
#TODO healthcheck for iocane?
|
||||
@ -3,7 +3,7 @@ version: "3.8"
|
||||
|
||||
services:
|
||||
app:
|
||||
image: "traefik:v3.6.6"
|
||||
image: "traefik:v3.6.5"
|
||||
# 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
|
||||
@ -49,7 +49,7 @@ services:
|
||||
- "traefik.http.routers.${STACK_NAME}.service=api@internal"
|
||||
- "traefik.http.routers.${STACK_NAME}.middlewares=security@file"
|
||||
- "coop-cloud.${STACK_NAME}.version=3.9.0+v3.6.5"
|
||||
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT}"
|
||||
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}"
|
||||
- "backupbot.backup=${ENABLE_BACKUPS:-true}"
|
||||
|
||||
socket-proxy:
|
||||
|
||||
@ -43,7 +43,6 @@ tls:
|
||||
curvePreferences:
|
||||
- CurveP521
|
||||
- CurveP384
|
||||
- CurveP256
|
||||
sniStrict: true
|
||||
{{ if eq (env "WILDCARDS_ENABLED") "1" }}
|
||||
certificates:
|
||||
|
||||
@ -42,6 +42,10 @@ entrypoints:
|
||||
allowEncodedPercent: true
|
||||
allowEncodedQuestionMark: true
|
||||
allowEncodedHash: true
|
||||
{{ if eq (env "IOCANE_ENABLED") "1" }}
|
||||
middlewares:
|
||||
- iocane@file
|
||||
{{ end }}
|
||||
{{ if eq (env "GITEA_SSH_ENABLED") "1" }}
|
||||
gitea-ssh:
|
||||
address: ":2222"
|
||||
@ -151,3 +155,10 @@ certificatesResolvers:
|
||||
- "1.1.1.1:53"
|
||||
- "9.9.9.9:53"
|
||||
{{ end }}
|
||||
|
||||
{{ if eq (env "IOCANE_ENABLED") "1" }}
|
||||
experimental:
|
||||
localPlugins:
|
||||
iocaine:
|
||||
moduleName: "git.mstar.dev/mstar/traefik-iocaine-middleware"
|
||||
{{ end }}
|
||||
|
||||
Reference in New Issue
Block a user