File size: 955 Bytes
a81ea67 56228a1 3d8996e b5fdf42 03dbf12 3d8996e 0aabb1f 3d8996e 56228a1 88c3d91 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | FROM node:lts-slim
# 1. Install build tools for native addons (python3, make, g++) AND your sync tools (git, bash)
# Doing this before npm install ensures node-gyp can find Python if needed during the initial install.
RUN apt-get update && apt-get install -y \
python3 \
make \
g++ \
git \
bash \
&& rm -rf /var/lib/apt/lists/*
# 2. Install global dependencies: omniroute, qodercli, and cline
RUN npm install -g omniroute @qoder-ai/qodercli cline
# 3. Rebuild native addons against the current Node version in the package root (removed '/app')
RUN cd /usr/local/lib/node_modules/omniroute && npm rebuild better-sqlite3
# 4. Install zod inside omniroute's directory where Turbopack can find it (removed '/app')
RUN cd /usr/local/lib/node_modules/omniroute && npm install zod --legacy-peer-deps
COPY sync.sh /sync.sh
RUN chmod +x /sync.sh
ENV PORT=7860
EXPOSE 7860
CMD ["/bin/bash", "-c", "/sync.sh && omniroute --port 7860"] |