1️⃣ STEP 1: Containerize Application
- ⭐ Image Size: ~10MB
- Created Dockerfile [Multi-stage, Scrath]
- Create docker-compose file for ease of use [cmd: docker-compose up -d]
This commit is contained in:
parent
cd59e03bae
commit
974029a3db
|
@ -0,0 +1,22 @@
|
|||
FROM golang:1.23-alpine as builder
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY go.mod .
|
||||
|
||||
RUN go mod download
|
||||
|
||||
COPY . .
|
||||
|
||||
RUN go build -o APP
|
||||
|
||||
FROM scratch
|
||||
|
||||
COPY --from=builder /app/APP .
|
||||
|
||||
COPY --from=builder /app/static ./static
|
||||
|
||||
EXPOSE 8080
|
||||
|
||||
CMD ["./APP"]
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
version: '3.8'
|
||||
|
||||
services:
|
||||
go-app:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "8080:8080"
|
||||
volumes:
|
||||
- ./static:/app/static
|
||||
# environment:
|
||||
# - ENV=production
|
Loading…
Reference in New Issue