Compare commits

...

2 Commits

Author SHA1 Message Date
devydave d79d4ab12d refactor: add seperate entrypoint for plugin init
continuous-integration/drone/pr Build is failing
2026-07-03 13:10:52 +02:00
devydave 536d958468 feat: adds iocaine config
continuous-integration/drone/pr Build is failing
2026-06-26 12:12:02 +02:00
7 changed files with 76 additions and 4 deletions
+4 -3
View File
@@ -1,3 +1,4 @@
export TRAEFIK_YML_VERSION=v31
export FILE_PROVIDER_YML_VERSION=v12
export ENTRYPOINT_VERSION=v5
export TRAEFIK_YML_VERSION=v32
export FILE_PROVIDER_YML_VERSION=v13
export ENTRYPOINT_VERSION=v7
export IOCAINE_ENTRYPOINT_VERSION=v1
+25
View File
@@ -0,0 +1,25 @@
---
version: "3.8"
services:
app:
environment:
IOCAINE_ENABLE: "1"
IOCAINE_PLUGIN_VERSION: "v1.2.0"
volumes:
- "plugins-local:/plugins-local"
iocaine:
image: "git.madhouse-project.org/iocaine/iocaine:3.5.0"
environment:
RUST_LOG: "iocaine=info"
ports:
- target: 42069
published: 42069
protocol: tcp
mode: host
networks:
- proxy
volumes:
plugins-local:
+7
View File
@@ -27,6 +27,9 @@ services:
- source: entrypoint
target: /custom-entrypoint.sh
mode: 0555
- source: iocaine_entrypoint
target: /entrypoint.iocaine.sh
mode: 0555
networks:
- proxy
- internal
@@ -115,6 +118,10 @@ configs:
name: ${STACK_NAME}_entrypoint_${ENTRYPOINT_VERSION}
file: entrypoint.sh.tmpl
template_driver: golang
iocaine_entrypoint:
name: ${STACK_NAME}_entrypoint_${IOCAINE_ENTRYPOINT_VERSION}
file: entrypoint.iocaine.sh.tmpl
template_driver: golang
volumes:
letsencrypt:
+15
View File
@@ -0,0 +1,15 @@
#!/bin/sh
set -e
apk --no-cache add git go
iocaine_path="/plugins-local/src/git.mstar.dev/mstar/traefik-iocaine-middleware"
if [ ! -d "$iocaine_path" ]; then
git clone --depth 1 --branch $IOCAINE_PLUGIN_VERSION https://git.mstar.dev/mstar/traefik-iocaine-middleware.git $iocaine_path
else
git -C $iocaine_path fetch origin 'refs/tags/*:refs/tags/*'
git -C $iocaine_path checkout tags/$IOCAINE_PLUGIN_VERSION
fi
(cd $iocaine_path && go mod vendor)
exit 0
+4
View File
@@ -15,4 +15,8 @@ export DO_AUTH_TOKEN=$(cat "$DO_AUTH_TOKEN_FILE")
export AZURE_CLIENT_SECRET=$(cat "$AZURE_CLIENT_SECRET_FILE")
{{ end }}
{{ if eq (env "IOCAINE_ENABLE") "1" }}
/entrypoint.iocaine.sh
{{ end }}
/entrypoint.sh "$@"
+10 -1
View File
@@ -17,6 +17,15 @@ http:
authResponseHeaders:
- X-Forwarded-User
{{ end }}
{{ if eq (env "IOCAINE_ENABLE") "1" }}
iocaine:
plugin:
iocaine:
iocaineHttpUrl: "http://iocaine:42069"
methods:
- GET
- HEAD
{{ end }}
{{ if eq (env "BASIC_AUTH") "1" }}
basicauth:
basicAuth:
@@ -61,4 +70,4 @@ tls:
certificates:
- certFile: /run/secrets/ssl_cert
keyFile: /run/secrets/ssl_key
{{ end }}
{{ end }}
+11
View File
@@ -42,6 +42,10 @@ entrypoints:
allowEncodedPercent: true
allowEncodedQuestionMark: true
allowEncodedHash: true
{{- if eq (env "IOCAINE_ENABLE") "1" }}
middlewares:
- iocaine@file
{{- end }}
{{- if eq (env "GITEA_SSH_ENABLED") "1" }}
gitea-ssh:
address: ":2222"
@@ -153,3 +157,10 @@ certificatesResolvers:
- "1.1.1.1:53"
- "9.9.9.9:53"
{{- end }}
{{ if eq (env "IOCAINE_ENABLE") "1" }}
experimental:
localPlugins:
iocaine:
moduleName: git.mstar.dev/mstar/traefik-iocaine-middleware
{{ end }}