aboutsummaryrefslogtreecommitdiff
path: root/Dockerfile
diff options
context:
space:
mode:
Diffstat (limited to 'Dockerfile')
-rw-r--r--Dockerfile28
1 files changed, 28 insertions, 0 deletions
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..7e389c4
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,28 @@
+# Use an official Go image as the builder
+FROM golang:1.24-alpine AS builder
+
+WORKDIR /app
+
+# Copy go mod and sum first
+COPY go.mod go.sum ./
+RUN go mod download
+
+# Copy the source code
+COPY . .
+
+# Build the Go app
+RUN go build -o mintube .
+
+# Final lightweight image
+FROM alpine:latest
+
+WORKDIR /app
+COPY --from=builder /app/mintube .
+COPY --from=builder /app/templates ./templates
+COPY --from=builder /app/static ./static
+
+# If your app needs ports exposed (e.g., a web server)
+EXPOSE 8080
+
+# Run the Go app
+CMD ["./mintube"]