Rumah > pembangunan bahagian belakang > Golang > Fail Docker Golang mudah dengan binaan berbilang peringkat (mengurangkan ~ saiz imej)

Fail Docker Golang mudah dengan binaan berbilang peringkat (mengurangkan ~ saiz imej)

Barbara Streisand
Lepaskan: 2024-10-01 11:12:30
asal
557 orang telah melayarinya

Menggunakan fail docker ini anda akan mengurangkan imej docker golang anda daripada ~1GB kepada ~40MB dan anda akan membina semula imej anda dengan lebih pantas

Simple Golang Dockerfile with multi staged builds (reduces ~ of the image size)

# Stage 1: Build the Go application
FROM golang:1.23-alpine AS builder

# Set the working directory inside the container
WORKDIR /app

# Copy the Go module files
COPY go.mod go.sum ./

# Download Go module dependencies
RUN go mod download

# Copy the rest of the application code
COPY . .

# Build the Go application
RUN go build -o main cmd/server/main.go

# Stage 2: Minimal image for running the app
FROM alpine:latest as runner

# Set environment variables (optional)
ENV GO_ENV=production

# Create a directory for the application
WORKDIR /app

# Copy the binary from the builder stage
COPY --from=builder /app/main .

# Expose the port on which the application runs (if applicable)
EXPOSE 8080

# Command to run the application
CMD ["./main"]
Salin selepas log masuk

Atas ialah kandungan terperinci Fail Docker Golang mudah dengan binaan berbilang peringkat (mengurangkan ~ saiz imej). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan