donetick/Dockerfile

28 lines
828 B
Text
Raw Normal View History

# Stage 1: Build the application
2024-09-06 20:56:06 -04:00
FROM alpine:latest AS builder
2024-06-30 21:41:41 -04:00
WORKDIR /usr/src/app
2024-09-06 20:56:06 -04:00
RUN apk --no-cache add curl jq
2024-06-30 21:41:41 -04:00
2024-09-06 20:56:06 -04:00
RUN latest_release=$(curl --silent "https://api.github.com/repos/donetick/donetick/releases/latest" | jq -r .tag_name) && \
curl -fL "https://github.com/donetick/donetick/releases/download/${latest_release}/donetick_Linux_x86_64.tar.gz" | tar -xz -C .
# Stage 2: Create a smaller runtime image
FROM alpine:latest
# Install necessary CA certificates
RUN apk --no-cache add ca-certificates libc6-compat
# Copy the binary and config folder from the builder stage
2024-09-06 20:56:06 -04:00
COPY --from=builder /usr/src/app/donetick /donetick
COPY --from=builder /usr/src/app/config /config
# Set environment variables
ENV DT_ENV="selfhosted"
# Expose the application port
EXPOSE 2021
# Command to run the application
CMD ["/donetick"]