From 7dcb8fc5657bf68565684d3e151fe13ad770447a Mon Sep 17 00:00:00 2001 From: lethdat Date: Mon, 19 Jan 2026 17:46:26 +0700 Subject: [PATCH] add docker --- .dockerignore | 36 ++++++++++++++++++++++++++++++++++++ Dockerfile | 16 ++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..d0281a8 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,36 @@ +# Docker Ignore File +.git +.gitignore +README.md +*.md +*.log +.txt +.env +.env.* +.dockerignore +Dockerfile +vendor/ +bin/ +tmp/ +temp/ +dist/ +coverage/ + +*.exe +*.exe~ +*.dll +*.so +*.dylib + +# Loại trừ các file tạm thời và biên dịch +test/ +tests/ +*.test +*_test.go + +# Loại trừ các file cấu hình IDE + +.idea/ +.vscode/ +*.swp +*.swo \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..403d093 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,16 @@ +FROM golang:1.25.6-alpine AS builder + +WORKDIR /app + +COPY go.mod go.sum ./ + +RUN go mod download + +COPY . . +RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -installsuffix cgo -ldflags="-s -w" -o main ./cmd/api +FROM scratch + +COPY --from=builder /app/main /main + +EXPOSE 8080 +ENTRYPOINT ["/main"] \ No newline at end of file