File size: 930 Bytes
8dc7642
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
30
31
32
FROM omkarasoftware/freeciv-web:latest

USER root
RUN apt-get update && apt-get install -y \
    git \
    curl \
    ca-certificates \
 && rm -rf /var/lib/apt/lists/*
RUN mkdir -p /app/env && chown -R docker:docker /app

USER docker
ENV HOME=/home/docker
WORKDIR /app/env

COPY --chown=docker:docker . /app/env
RUN chmod +x /app/env/scripts/start_space.sh
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
ENV PATH="/app/env/.venv/bin:/home/docker/.local/bin:$PATH"
RUN uv python install 3.11
RUN uv venv --python 3.11 /app/env/.venv
RUN UV_PROJECT_ENVIRONMENT=/app/env/.venv uv sync --frozen --no-dev --no-editable

ENV PYTHONPATH="/app/env:$PYTHONPATH"
ENV ENABLE_WEB_INTERFACE=true
ENV FREECIV_SERVER_URL=http://127.0.0.1
ENV FREECIV_TURN_TIMEOUT_S=120

HEALTHCHECK --interval=30s --timeout=5s --start-period=20s --retries=10 \
    CMD curl -f http://localhost:8000/health || exit 1

CMD ["/app/env/scripts/start_space.sh"]