commit 11ccbec13493b9660260b162168cb1d53e3ff2cf Author: RemiZOffAlex Date: Fri Aug 23 09:13:23 2024 +0300 Traefik 3 diff --git a/.gitea/workflows/builder.yaml b/.gitea/workflows/builder.yaml new file mode 100644 index 0000000..0aa21a8 --- /dev/null +++ b/.gitea/workflows/builder.yaml @@ -0,0 +1,25 @@ +name: Build traefik image +run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 +on: [push] + +jobs: + Builder: + runs-on: + group: fedora-40 + labels: registry.r10x/toolchain + secrets: + access-token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} + env: + IMAGE_NAME: registry.r10x/traefik + steps: + # - uses: actions/checkout@v4 + - run: env + - run: cat $GITHUB_ENV + - run: pwd + - run: ls -la + - run: git config --global url."https://${ACTIONS_RUNTIME_TOKEN}:x-oauth-basic@codex.r10x.net/".insteadOf "${GITHUB_SERVER_URL}" + - run: git clone ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY} ${PWD} + - run: pwd + - run: ls -la + - run: docker build --progress=plain --tag ${IMAGE_NAME} . + - run: docker push ${IMAGE_NAME} diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..3f35bbe --- /dev/null +++ b/Dockerfile @@ -0,0 +1,11 @@ +FROM registry.r10x/toolchain:latest + +ARG TRAEFIKVERSION=v3.0.4 +ENV TRAEFIKVERSION=${TRAEFIKVERSION} + +CMD /usr/local/bin/traefik + +RUN wget https://github.com/traefik/traefik/releases/download/${TRAEFIKVERSION}/traefik_${TRAEFIKVERSION}_linux_amd64.tar.gz +RUN tar --directory=/usr/local/bin -xzf traefik_${TRAEFIKVERSION}_linux_amd64.tar.gz traefik + +COPY traefik /etc/traefik diff --git a/README.md b/README.md new file mode 100644 index 0000000..8cc0b72 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# Traefik diff --git a/traefik/conf.d/app.yml b/traefik/conf.d/app.yml new file mode 100644 index 0000000..9af801f --- /dev/null +++ b/traefik/conf.d/app.yml @@ -0,0 +1,30 @@ +http: + routers: + traefik: + # rule: "Host(`*`)" + rule: "Path(`/traefik`)" + entryPoints: + - traefik + service: api@internal + + default: + rule: > + HostRegexp(`.+`) + entryPoints: + - web + service: default + + services: + default: + loadBalancer: + healthCheck: + path: /status + interval: 10s + timeout: 3s + servers: + - url: "http://app:5000/" + +# providers: +# docker: +# endpoint: "unix:///var/run/docker.sock" +# exposedByDefault: false diff --git a/traefik/traefik.yml b/traefik/traefik.yml new file mode 100644 index 0000000..0baea38 --- /dev/null +++ b/traefik/traefik.yml @@ -0,0 +1,19 @@ +log: + # level: INFO + level: DEBUG +accessLog: {} + +api: + insecure: true + dashboard: true + debug: true + disabledashboardad: false + +entryPoints: + web: + address: ":80" + +providers: + file: + directory: "/etc/traefik/conf.d" + watch: true