# File: Dockerfile.prod # Stage 1: Use a minimal base image like Alpine FROM alpine:latest # Có thể cần cài đặt các dependency tối thiểu mà app cần khi chạy (ví dụ: ca-certificates) # RUN apk update && apk add --no-cache ca-certificates tzdata # Thiết lập thư mục làm việc WORKDIR /app # Copy file binary đã được build từ artifact vào thư mục làm việc trong image # Đường dẫn "/app/server" này phải khớp với nơi bạn đặt artifact khi download ở bước CI COPY ./bin/server /app/server # Thiết lập quyền thực thi cho file binary RUN chmod +x /app/server # Khai báo cổng mà ứng dụng của bạn lắng nghe bên trong container # (Ví dụ: 8080, phải khớp với code Go của bạn) EXPOSE 8080 # Lệnh để chạy ứng dụng khi container khởi động # Sử dụng đường dẫn tuyệt đối hoặc tương đối từ WORKDIR CMD ["/app/server"]