Goreleaser config working. Docker image tested and working.
- Fix: Add CA certificates from BusyBox to Dockerfile - Add: compose.yml.example with traefik labels and working example
- commit
- 534fa7784c02d49d4727d2300ac5d5c26d3dad70
- author
- bnema · · 2023-10-30 16:34 UTC
- parent
- 10d06d2
- signature
- unsigned
2 files · +37 -0
M Dockerfile +9 -0
| @@ -1,5 +1,14 @@ | |||
| 1 | + | # Fetch the CA certificates from BusyBox | |
| 2 | + | FROM busybox:latest as certs | |
| 3 | + | RUN mkdir -p /etc/ssl/certs/ && \ | |
| 4 | + | wget -O /etc/ssl/certs/ca-certificates.crt https://curl.se/ca/cacert-2023-08-22.pem | |
| 5 | + | ||
| 6 | + | # Start from scratch | |
| 1 | 7 | FROM scratch | |
| 2 | 8 | ||
| 9 | + | # Copy CA certificates | |
| 10 | + | COPY --from=certs /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ | |
| 11 | + | ||
| 3 | 12 | COPY gordon / | |
| 4 | 13 | ||
| 5 | 14 | EXPOSE 1323 | |
| @@ -1,5 +1,14 @@ | |||||
| 1 | + | # Fetch the CA certificates from BusyBox | |||
| 2 | + | FROM busybox:latest as certs | |||
| 3 | + | RUN mkdir -p /etc/ssl/certs/ && \ | |||
| 4 | + | wget -O /etc/ssl/certs/ca-certificates.crt https://curl.se/ca/cacert-2023-08-22.pem | |||
| 5 | + | ||||
| 6 | + | # Start from scratch | |||
| 1 | FROM scratch | 7 | FROM scratch | ||
| 2 | 8 | ||||
| 9 | + | # Copy CA certificates | |||
| 10 | + | COPY --from=certs /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ | |||
| 11 | + | ||||
| 3 | COPY gordon / | 12 | COPY gordon / | ||
| 4 | 13 | ||||
| 5 | EXPOSE 1323 | 14 | EXPOSE 1323 | ||
A compose.yml.example +28 -0
| @@ -0,0 +1,28 @@ | |||
| 1 | + | version: '3' | |
| 2 | + | ||
| 3 | + | services: | |
| 4 | + | gordon: | |
| 5 | + | container_name: gordon | |
| 6 | + | image: bnema/gordon:latest | |
| 7 | + | ports: | |
| 8 | + | - "1323" | |
| 9 | + | environment: | |
| 10 | + | SESSION_SECRET: "secret" | |
| 11 | + | DEV: false | |
| 12 | + | USER: "${USER}" | |
| 13 | + | volumes: | |
| 14 | + | - ./data:/data | |
| 15 | + | - .config.yml:/config.yml | |
| 16 | + | - /run/user/1000/podman/podman.sock:/var/run/docker.sock | |
| 17 | + | restart: always | |
| 18 | + | networks: | |
| 19 | + | - traefik | |
| 20 | + | labels: | |
| 21 | + | - "traefik.enable=true" | |
| 22 | + | - "traefik.http.routers.gordon.rule=Host(`gordon.domain.tld)" | |
| 23 | + | - "traefik.http.routers.gordon.entrypoints=websecure" | |
| 24 | + | - "traefik.http.routers.gordon.tls.certresolver=letsencrypt" | |
| 25 | + | - "traefik.http.services.gordon.loadbalancer.server.port=1323" | |
| 26 | + | networks: | |
| 27 | + | traefik: | |
| 28 | + | external: true | |
| @@ -0,0 +1,28 @@ | |||||
| 1 | + | version: '3' | |||
| 2 | + | ||||
| 3 | + | services: | |||
| 4 | + | gordon: | |||
| 5 | + | container_name: gordon | |||
| 6 | + | image: bnema/gordon:latest | |||
| 7 | + | ports: | |||
| 8 | + | - "1323" | |||
| 9 | + | environment: | |||
| 10 | + | SESSION_SECRET: "secret" | |||
| 11 | + | DEV: false | |||
| 12 | + | USER: "${USER}" | |||
| 13 | + | volumes: | |||
| 14 | + | - ./data:/data | |||
| 15 | + | - .config.yml:/config.yml | |||
| 16 | + | - /run/user/1000/podman/podman.sock:/var/run/docker.sock | |||
| 17 | + | restart: always | |||
| 18 | + | networks: | |||
| 19 | + | - traefik | |||
| 20 | + | labels: | |||
| 21 | + | - "traefik.enable=true" | |||
| 22 | + | - "traefik.http.routers.gordon.rule=Host(`gordon.domain.tld)" | |||
| 23 | + | - "traefik.http.routers.gordon.entrypoints=websecure" | |||
| 24 | + | - "traefik.http.routers.gordon.tls.certresolver=letsencrypt" | |||
| 25 | + | - "traefik.http.services.gordon.loadbalancer.server.port=1323" | |||
| 26 | + | networks: | |||
| 27 | + | traefik: | |||
| 28 | + | external: true | |||