feat: initial commit
This commit is contained in:
29
misc/docker/Dockerfile
Normal file
29
misc/docker/Dockerfile
Normal file
@ -0,0 +1,29 @@
|
||||
FROM golang:1.23 AS build
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y make git
|
||||
|
||||
RUN --mount=type=cache,target=/go/pkg/mod/ \
|
||||
--mount=type=bind,source=go.sum,target=go.sum \
|
||||
--mount=type=bind,source=go.mod,target=go.mod \
|
||||
go mod download -x
|
||||
|
||||
WORKDIR /src
|
||||
|
||||
COPY . /src
|
||||
|
||||
ARG GOCACHE=/root/.cache/go-build
|
||||
|
||||
RUN --mount=type=cache,target=/go/pkg/mod/ \
|
||||
--mount=type=cache,target="/root/.cache/go-build" \
|
||||
--mount=type=cache,target=./tools \
|
||||
make build
|
||||
|
||||
FROM alpine:3.21 AS runtime
|
||||
|
||||
RUN apk add ca-certificates \
|
||||
&& update-ca-certificates
|
||||
|
||||
COPY --from=build /src/bin/kouiz /usr/local/bin/kouiz
|
||||
|
||||
CMD ["/usr/local/bin/kouiz"]
|
8
misc/docker/docker.mk
Normal file
8
misc/docker/docker.mk
Normal file
@ -0,0 +1,8 @@
|
||||
DOCKER_STANDALONE_IMAGE_NAME := kouiz-standalone
|
||||
DOCKER_STANDALONE_IMAGE_TAG := latest
|
||||
|
||||
docker-image:
|
||||
docker build -f misc/docker/Dockerfile -t $(DOCKER_STANDALONE_IMAGE_NAME):$(DOCKER_STANDALONE_IMAGE_TAG) .
|
||||
|
||||
docker-run:
|
||||
docker run -it --rm -p 3000:3000 --name kouiz --tmpfs /tmp --env-file .env $(DOCKER_STANDALONE_IMAGE_NAME):$(DOCKER_STANDALONE_IMAGE_TAG)
|
Reference in New Issue
Block a user