@@ -2,12 +2,6 @@ FROM golang:1.24.1 AS builder
22
33WORKDIR /app
44
5- # Install SQLite dependencies
6- RUN apt-get update && apt-get install -y \
7- gcc \
8- libc6-dev \
9- && rm -rf /var/lib/apt/lists/*
10-
115COPY go.mod go.sum ./
126
137RUN go mod download
@@ -40,12 +34,8 @@ COPY web/ .
4034
4135RUN npm run build
4236
43- FROM ubuntu:22.04
44-
45- ENV TZ=UTC
46- ENV DEBIAN_FRONTEND=noninteractive
37+ FROM ghcr.io/mcp-ecosystem/mcp-gateway/base:latest AS runtime
4738
48- # Define ARGs for package sources
4939ARG PIP_INDEX_URL=https://pypi.org/simple
5040ARG UV_DEFAULT_INDEX=https://pypi.org/simple
5141ARG npm_config_registry=https://registry.npmjs.org/
@@ -54,39 +44,9 @@ ENV PIP_INDEX_URL=${PIP_INDEX_URL} \
5444 UV_DEFAULT_INDEX=${UV_DEFAULT_INDEX} \
5545 npm_config_registry=${npm_config_registry}
5646
57- # Install essential packages and setup timezone
58- RUN apt-get update && apt-get install -y \
59- supervisor \
60- nginx \
61- curl \
62- vim \
63- tzdata \
64- python3 \
65- python3-pip \
66- python3-venv \
67- && rm -rf /var/lib/apt/lists/* \
68- && ln -fs /usr/share/zoneinfo/${TZ} /etc/localtime \
69- && echo ${TZ} > /etc/timezone \
70- && dpkg-reconfigure -f noninteractive tzdata
71-
72- # Install Node.js LTS
73- RUN curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - && \
74- apt-get install -y nodejs && \
75- npm install -g npm@latest
76-
77- # Install pipx
78- ENV PIPX_HOME=/opt/pipx
79- ENV PIPX_BIN_DIR=/opt/pipx/bin
80- ENV PATH=$PIPX_BIN_DIR:$PATH
81- RUN python3 -m pip install pipx && \
82- pipx ensurepath
83-
84- # Install uv
85- RUN python3 -m pip install uv
86-
8747# Configure pip and npm to use the specified repositories
8848RUN mkdir -p /root/.config/pip && \
89- echo -e "[global]\n index-url = ${PIP_INDEX_URL}" > /root/.config/pip/pip.conf && \
49+ echo "[global]\n index-url = \ $ {PIP_INDEX_URL}" > /root/.config/pip/pip.conf && \
9050 npm config set registry ${npm_config_registry} -g
9151
9252COPY deploy/docker/allinone/supervisord.conf /etc/supervisor/conf.d/
0 commit comments