Initial segregate: proxy source, deploy manifests, ImagePolicy Flux CRs.
build-and-push / build (push) Failing after 2m45s
build-and-push / build (push) Failing after 2m45s
Move workload out of infra with cursor-devbox-style GitRepository + run_number-sha image automation.
This commit is contained in:
+51
@@ -0,0 +1,51 @@
|
||||
# cursor-agent-api-proxy — OpenAI-compatible API in front of cursor-agent CLI (ACP).
|
||||
#
|
||||
# Every request uses cursor-agent ACP (`agent acp`):
|
||||
# - session/new with in-process MCP server for client tools[]
|
||||
# - session/prompt with text + image ContentBlocks
|
||||
# - session/request_permission denies built-in tools, allows MCP client tools
|
||||
# - Tool invocations park until HTTP client returns role:"tool"
|
||||
#
|
||||
# Requires CURSOR_API_KEY (Cursor subscription) at runtime.
|
||||
|
||||
FROM ubuntu:noble
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
bash \
|
||||
ca-certificates \
|
||||
curl \
|
||||
tzdata \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Node 20 (LTS) — proxy and stdio MCP bridge both run on Node.
|
||||
RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && \
|
||||
apt-get install -y --no-install-recommends nodejs && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# cursor-agent CLI (subscription-backed).
|
||||
RUN curl -fsS https://cursor.com/install | bash && \
|
||||
CURSOR_VERSION_DIR="$(echo /root/.local/share/cursor-agent/versions/*)" && \
|
||||
cp -r "${CURSOR_VERSION_DIR}" /opt/cursor-agent && \
|
||||
ln -sf /opt/cursor-agent/cursor-agent /usr/local/bin/cursor-agent && \
|
||||
ln -sf /opt/cursor-agent/cursor-agent /usr/local/bin/agent.real
|
||||
|
||||
# Application code.
|
||||
COPY src/ /app/src/
|
||||
COPY scripts/ /app/scripts/
|
||||
COPY cursor-bootstrap/ /opt/cursor-bootstrap/
|
||||
COPY entrypoint.sh /app/entrypoint.sh
|
||||
|
||||
RUN mkdir -p /workspace /home/nobody/.cursor && \
|
||||
chmod +x /app/scripts/*.sh /app/entrypoint.sh && \
|
||||
chown -R nobody:nogroup /opt/cursor-agent /opt/cursor-bootstrap /app /workspace /home/nobody
|
||||
|
||||
WORKDIR /workspace
|
||||
ENV PORT=4646
|
||||
ENV HOME=/home/nobody
|
||||
ENV NODE_ENV=production
|
||||
USER nobody
|
||||
|
||||
EXPOSE 4646
|
||||
ENTRYPOINT ["/app/entrypoint.sh"]
|
||||
Reference in New Issue
Block a user