1
0
Fork 0
loadr/Dockerfile

40 lines
668 B
Text
Raw Permalink Normal View History

2024-12-04 16:40:52 -06:00
FROM golang:1.23-alpine AS builder
WORKDIR /app
COPY . .
# Build loadr
RUN go build -o loadr
# Create and build the server using a shell script
RUN <<EOF cat > server.go
package main
import (
"log"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("Loadr is ready"))
})
log.Printf("Server starting on :8080")
if err := http.ListenAndServe(":8080", nil); err != nil {
log.Fatal(err)
}
}
EOF
RUN go build -o server server.go
FROM alpine:latest
WORKDIR /app
COPY --from=builder /app/loadr .
COPY --from=builder /app/server .
EXPOSE 8080
CMD ["/app/server"]