thomas-shop/Dockerfile
2022-05-02 16:26:06 +02:00

49 lines
837 B
Docker

# syntax=docker/dockerfile:1
##
## Build
##
FROM golang:alpine AS build
WORKDIR /app
RUN apk update
RUN apk add --update gcc g++
RUN apk add --update python3
RUN apk add --update npm
COPY package.json ./package.json
RUN npm i
COPY ./src ./src
COPY ./gulpfile.js ./gulpfile.js
COPY ./webpack.config.js ./webpack.config.js
RUN npx gulp build
COPY go.mod .
COPY go.sum .
RUN go mod download
RUN go install github.com/mattn/go-sqlite3
COPY . ./
RUN ls -l
RUN mkdir bin
RUN go build -o bin/thomasshop
##
## Deploy
##
FROM alpine:latest
WORKDIR /
COPY --from=build /app/bin/thomasshop /bin
COPY --from=build /app/dist /dist
COPY --from=build /app/templates /templates
RUN echo "#!/bin/ash" > /run.sh
RUN echo "cp -r /dist/* /outdist" >> /run.sh
RUN echo "exec /bin/thomasshop" >> /run.sh
RUN chmod +x /run.sh
ENTRYPOINT ["/run.sh"]