gosearch/Dockerfile
Renovate Bot e3f0c84e7a
All checks were successful
Go / build (pull_request) Successful in 11s
SonarQube Scan / Build and analyze (pull_request) Successful in 31s
Go / build (push) Successful in 13s
renovate / renovate (push) Successful in 1m13s
SonarQube Scan / Build and analyze (push) Successful in 40s
chore(deps): update alpine docker tag to v3.22
2025-05-31 00:01:59 +00:00

26 lines
639 B
Docker

# Use the official Golang image for building
FROM golang:1.24 AS builder
# Set working directory
WORKDIR /app
# Copy Go modules and dependencies
COPY go.mod go.sum ./
RUN go mod download
# Copy source code
COPY . .
# Build the application
RUN go build -o gosearch .
# Use a minimal base image for final deployment
FROM alpine:3.22
# Set working directory in the container
WORKDIR /
# Copy the built binary from the builder stage
COPY --from=builder /app/gosearch .
# Add executing User
RUN addgroup gosearch \
&& useradd -g gosearch gosearch
USER gosearch
# Expose the application port
EXPOSE 3000
# Run the application
CMD ["./gosearch"]