mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-03-01 16:20:59 +00:00
[chore] Remove duplicate swagger docs build in Dockerfile (#3842)
* [chore] Use vendored swagger in Docker container * skip the swagger step altogether actually, it's already done by goreleaser anyway
This commit is contained in:
parent
8bc502ba62
commit
1f38b7b48f
1 changed files with 3 additions and 20 deletions
23
Dockerfile
23
Dockerfile
|
@ -1,24 +1,7 @@
|
|||
# syntax=docker/dockerfile:1.3
|
||||
# Dockerfile reference: https://docs.docker.com/engine/reference/builder/
|
||||
|
||||
# stage 1: generate up-to-date swagger.yaml to put in the final container
|
||||
FROM --platform=${BUILDPLATFORM} golang:1.23-alpine AS swagger
|
||||
|
||||
RUN \
|
||||
### Installs goswagger for building swagger definitions inside this container
|
||||
go install "github.com/go-swagger/go-swagger/cmd/swagger@c46c303aaa02" && \
|
||||
# Makes swagger executable
|
||||
chmod +x /go/bin/swagger
|
||||
|
||||
COPY go.mod /go/src/github.com/superseriousbusiness/gotosocial/go.mod
|
||||
COPY go.sum /go/src/github.com/superseriousbusiness/gotosocial/go.sum
|
||||
COPY cmd /go/src/github.com/superseriousbusiness/gotosocial/cmd
|
||||
COPY internal /go/src/github.com/superseriousbusiness/gotosocial/internal
|
||||
|
||||
WORKDIR /go/src/github.com/superseriousbusiness/gotosocial
|
||||
RUN /go/bin/swagger generate spec -o /go/src/github.com/superseriousbusiness/gotosocial/swagger.yaml --scan-models
|
||||
|
||||
# stage 2: generate the web/assets/dist bundles
|
||||
# stage 1: generate the web/assets/dist bundles
|
||||
FROM --platform=${BUILDPLATFORM} node:18-alpine AS bundler
|
||||
|
||||
COPY web web
|
||||
|
@ -27,7 +10,7 @@ RUN yarn --cwd ./web/source install && \
|
|||
yarn --cwd ./web/source build && \
|
||||
rm -rf ./web/source
|
||||
|
||||
# stage 3: build the executor container
|
||||
# stage 2: build the executor container
|
||||
FROM --platform=${TARGETPLATFORM} alpine:3.20 as executor
|
||||
|
||||
# switch to non-root user:group for GtS
|
||||
|
@ -50,7 +33,7 @@ COPY --chown=1000:1000 gotosocial /gotosocial/gotosocial
|
|||
|
||||
# copy over the web directories with templates, assets etc
|
||||
COPY --chown=1000:1000 --from=bundler web /gotosocial/web
|
||||
COPY --chown=1000:1000 --from=swagger /go/src/github.com/superseriousbusiness/gotosocial/swagger.yaml web/assets/swagger.yaml
|
||||
COPY --chown=1000:1000 ./web/assets/swagger.yaml /gotosocial/web/assets/swagger.yaml
|
||||
|
||||
VOLUME [ "/gotosocial/storage", "/gotosocial/.cache" ]
|
||||
ENTRYPOINT [ "/gotosocial/gotosocial", "server", "start" ]
|
||||
|
|
Loading…
Reference in a new issue