Add CI/CD workflows and Kubernetes configurations for deployment
Some checks failed
CI - Build and Push / Build and Push Docker Image (push) Failing after 11s

This commit is contained in:
2025-10-07 10:45:44 +08:00
parent 0a60a84ab8
commit 38ca0cf0e9
9 changed files with 559 additions and 0 deletions

40
Dockerfile Normal file
View File

@@ -0,0 +1,40 @@
# Build stage
FROM golang:1.24.4-alpine AS builder
# Install build dependencies
RUN apk add --no-cache git
# Set working directory
WORKDIR /app
# Copy go mod files from src directory
COPY src/go.mod src/go.sum ./
# Download dependencies
RUN go mod download
# Copy source code from src directory
COPY src/ .
# Build the application
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o authenticator authenticator.go
# Production stage
FROM alpine:latest
# Install ca-certificates for HTTPS
RUN apk --no-cache add ca-certificates
WORKDIR /root/
# Copy binary from builder
COPY --from=builder /app/authenticator .
# Copy config file
COPY --from=builder /app/etc/authenticator.yaml ./etc/
# Expose port
EXPOSE 8888
# Run the application
CMD ["./authenticator", "-f", "etc/authenticator.yaml"]