Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions Dockerfile-deploy
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Build stage
FROM golang:1.24 AS builder

# Set working directory
WORKDIR /app

# Copy go.mod and go.sum files for dependency resolution
COPY go.mod go.sum ./

# Download dependencies
RUN go mod download

# Copy the source code
COPY . .

# Build the API executable
RUN cd deployments && go build -o api api.go

# Final stage
FROM debian:bookworm-slim

# Set working directory
WORKDIR /app

# Install necessary runtime dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
&& rm -rf /var/lib/apt/lists/*

# Copy the API binary from the builder stage
COPY --from=builder /app/deployments/api /app/api

# Copy the HTML file to the same directory as the API executable
COPY deployments/maestro.html /app/maestro.html

# Create src directory and copy YAML files
RUN mkdir -p /app/src
# for embedded yaml files
# COPY deployments/src/agents.yaml /app/src/agents.yaml
# COPY deployments/src/workflow.yaml /app/src/workflow.yaml

# Make the API executable
RUN chmod +x /app/api

# Set environment variables
ENV HOST=0.0.0.0
ENV PORT=8080

# Expose the port
EXPOSE 8080

# Set the entry point
ENTRYPOINT ["/app/api"]
Loading
Loading