You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
841 B
21 lines
841 B
FROM golang:1.21-bullseye as builder
|
|
WORKDIR /app
|
|
COPY . .
|
|
RUN mkdir ./bin; go build -buildvcs=false -o ./bin ./cmd/...
|
|
|
|
FROM ubuntu:23.10 as litestream
|
|
WORKDIR /download
|
|
RUN apt update -y && apt install -y wget tar
|
|
RUN wget https://github.com/benbjohnson/litestream/releases/download/v0.3.9/litestream-v0.3.9-linux-amd64.tar.gz; \
|
|
tar -zxf litestream-v0.3.9-linux-amd64.tar.gz;
|
|
|
|
FROM ubuntu:23.10
|
|
WORKDIR /themis
|
|
COPY --from=builder /app/bin/themis-server /usr/local/bin/themis-server
|
|
COPY --from=litestream /download/litestream /usr/local/bin/litestream
|
|
COPY --from=builder /app/start.sh ./start.sh
|
|
# install ca-certificates for outbound https calls, and sqlite3 for debugging
|
|
# tzdata is needed to resolve the timezone on startup
|
|
RUN apt update -y; apt install -y ca-certificates sqlite3 tzdata; apt-get clean
|
|
ENTRYPOINT ["./start.sh"]
|