Files
firecrawl-mcp-server/Dockerfile.service
T
Thomas KosmasandNicolas 0076ed57cd Fastmcp (#97)
* fastmcp

* fix ci

* fix

* specify host

* wip

* fix host for cloud

* wip

* wip

* wip

* remove log

* fix

* wip

* ready

* fix sse?

* Update package.json

* Update package.json

* Nick:

* Update index.ts

* Update package.json

* Nick:

* Nick: tool descriptions

* Nick:

* Update ci.yml

---------

Co-authored-by: Nicolas <nicolascamara29@gmail.com>
2025-09-11 19:36:55 -03:00

35 lines
847 B
Desktop File

## Service image: Node (FastMCP) + NGINX sidecar in one container
# 1) Build stage
FROM node:22-alpine AS builder
WORKDIR /app
COPY package*.json ./
# Ensure dev dependencies (typescript, etc.) are installed for build, but skip scripts to avoid running
# the package "prepare" script before the source code is copied.
RUN npm ci --include=dev --ignore-scripts
COPY . .
RUN npm run build
# 2) Runtime stage (Node + NGINX)
FROM node:22-alpine AS runner
WORKDIR /app
RUN apk add --no-cache nginx bash curl
# Copy built app and install prod deps only
COPY --from=builder /app/dist ./dist
COPY package*.json ./
RUN npm ci --omit=dev --ignore-scripts
# NGINX config and entrypoint
COPY docker/nginx.conf /etc/nginx/nginx.conf
COPY docker/entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
ENV PORT=3000
EXPOSE 8080
CMD ["/entrypoint.sh"]