|
|
|
|
|
FROM ghcr.io/gdtiti/flow2api:latest
|
|
|
|
|
|
|
|
|
USER root
|
|
|
|
|
|
|
|
|
RUN cd /app && \
|
|
|
|
|
|
touch logs.txt && \
|
|
|
chmod 666 logs.txt && \
|
|
|
|
|
|
mkdir -p data && \
|
|
|
chmod 755 data && \
|
|
|
|
|
|
chown -R app:app /app 2>/dev/null || \
|
|
|
|
|
|
(chmod 777 logs.txt data && echo "Made files world writable as fallback") && \
|
|
|
echo "File permissions fixed"
|
|
|
|
|
|
|
|
|
RUN echo '
|
|
|
echo "=== Startup Debug Info ==="\n\
|
|
|
echo "User: $(whoami)"\n\
|
|
|
echo "Current dir: $(pwd)"\n\
|
|
|
echo "Listing /app:"\n\
|
|
|
ls -la /app/\n\
|
|
|
echo "Checking logs.txt permissions:"\n\
|
|
|
ls -la /app/logs.txt\n\
|
|
|
echo "=== End Debug Info ==="\n\
|
|
|
exec python main.py' > /app/start_debug.sh && \
|
|
|
chmod +x /app/start_debug.sh
|
|
|
|
|
|
|
|
|
ENV PYTHONUNBUFFERED=1
|
|
|
ENV PYTHONDONTWRITEBYTECODE=1
|
|
|
ENV FLOW2API_HOST=0.0.0.0
|
|
|
ENV FLOW2API_PORT=7860
|
|
|
|
|
|
|
|
|
ENV FLOW2API_DEBUG_ENABLED=true
|
|
|
ENV FLOW2API_DEBUG_LOG_REQUESTS=false
|
|
|
ENV FLOW2API_DEBUG_LOG_RESPONSES=false
|
|
|
|
|
|
|
|
|
USER app 2>/dev/null || USER root
|
|
|
|
|
|
|
|
|
EXPOSE 7860
|
|
|
|
|
|
|
|
|
HEALTHCHECK --interval=30s --timeout=10s --start-period=120s --retries=3 \
|
|
|
CMD python -c "import socket; s=socket.socket(); s.connect(('localhost', 7860)); s.close()" || exit 1
|
|
|
|
|
|
|
|
|
CMD ["/app/start_debug.sh"] |