45 lines
883 B
Docker
45 lines
883 B
Docker
# Development stage - pocketbase only
|
|
FROM alpine:latest AS dev
|
|
|
|
ARG PB_VERSION=0.36.8
|
|
|
|
RUN apk add --no-cache \
|
|
unzip \
|
|
ca-certificates
|
|
|
|
# Download and unzip PocketBase
|
|
ADD https://github.com/pocketbase/pocketbase/releases/download/v${PB_VERSION}/pocketbase_${PB_VERSION}_linux_amd64.zip /tmp/pb.zip
|
|
RUN unzip /tmp/pb.zip -d /pb/
|
|
|
|
EXPOSE 8090 8091
|
|
|
|
CMD ["/pb/pocketbase", "serve", "--http=0.0.0.0:8090"]
|
|
|
|
# Build stage
|
|
FROM denoland/deno:latest AS build
|
|
WORKDIR /app
|
|
|
|
COPY ./sidecar .
|
|
|
|
# Install dependencies
|
|
RUN deno install
|
|
|
|
# Production stage
|
|
FROM denoland/deno:latest AS prod
|
|
WORKDIR /app
|
|
|
|
# Copy sidecar
|
|
COPY --from=build /app ./sidecar
|
|
|
|
# Copy pocketbase binary
|
|
COPY --from=dev /pb/pocketbase ./pocketbase
|
|
|
|
COPY ./pb_migrations ./pb_migrations
|
|
COPY ./pb_hooks ./pb_hooks
|
|
COPY ./sidecar ./sidecar
|
|
COPY ./start.sh ./start.sh
|
|
|
|
RUN chmod +x ./start.sh
|
|
|
|
CMD ["./start.sh"]
|