TomatitoToho's picture
Add cloudflared backup tunnel + fix ngrok
db87d37 verified
Raw
History Blame Contribute Delete
2.52 kB
# Embodied Navigation Benchmark β€” Research Environment
# Evaluates autonomous AI agents in 3D spatial navigation tasks
FROM python:3.11-slim
# ── System dependencies ────────────────────────────────────────────────────
RUN apt-get update && apt-get install -y --no-install-recommends \
curl wget unzip ca-certificates gnupg \
&& rm -rf /var/lib/apt/lists/*
# ── Install Java runtime ───────────────────────────────────────────────────
RUN apt-get update && apt-get install -y --no-install-recommends \
openjdk-21-jre-headless \
&& rm -rf /var/lib/apt/lists/*
# ── Python packages ────────────────────────────────────────────────────────
RUN pip install --no-cache-dir gradio requests psutil uvicorn fastapi
# ── Install ngrok v3 ───────────────────────────────────────────────────────
RUN curl -sLo /tmp/ngrok.deb https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-stable-linux-amd64.deb && \
dpkg -i /tmp/ngrok.deb 2>/dev/null; \
which ngrok || (curl -sLo /usr/local/bin/ngrok https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-stable-linux-amd64 && chmod +x /usr/local/bin/ngrok); \
ngrok version || echo "ngrok may not be available"
# ── Install cloudflared as backup tunnel ───────────────────────────────────
RUN curl -sLo /usr/local/bin/cloudflared https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 && \
chmod +x /usr/local/bin/cloudflared || echo "cloudflared install attempted"
# ── Application ────────────────────────────────────────────────────────────
WORKDIR /app
COPY app.py /app/app.py
COPY start.sh /app/start.sh
COPY env/ /app/env/
RUN mkdir -p /app/simulation/world /app/simulation/logs /app/data
ENV PORT=7860
EXPOSE 7860
HEALTHCHECK --interval=30s --timeout=15s --start-period=180s --retries=5 \
CMD curl -f http://localhost:7860/health || exit 1
CMD ["bash", "/app/start.sh"]