FROM node:20-alpine WORKDIR /bootstrap RUN apk add --no-cache bash git ca-certificates openssh-client shadow python3 make g++ ENV NODE_ENV=production ENV NODE_OPTIONS="--max-old-space-size=8192" ENV PORT=7860 ENV UV_THREADPOOL_SIZE=4 ENV ROOT_PASSWORD="" ENV ADMIN_TERMINAL_SECRET="" COPY start.sh /bootstrap/start.sh RUN chmod +x /bootstrap/start.sh EXPOSE 7860 HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ CMD node -e "const http=require('http'); const req=http.get({host:'127.0.0.1',port:process.env.PORT||7860,path:'/api/health',timeout:5000},(res)=>process.exit(res.statusCode===200?0:1)); req.on('error',()=>process.exit(1)); req.on('timeout',()=>{req.destroy();process.exit(1)});" CMD ["/bootstrap/start.sh"]