ConLLUeditor / Dockerfile
Juna190825's picture
Update Dockerfile
0b89bf8 verified
# Stage 1 — extract ConlluEditor from the official image
FROM jheinecke/conllueditor:latest AS conllu
# Stage 2 — real runtime with package manager
FROM debian:stable-slim
# Install Java + Python
RUN apt-get update && apt-get install -y \
openjdk-21-jre-headless \
python3 \
python3-pip \
python3-venv \
bash \
&& rm -rf /var/lib/apt/lists/*
# Copy ConlluEditor from stage 1
COPY --from=conllu /usr/src/ConlluEditor /usr/src/ConlluEditor
# Copy proxy + upload server
COPY proxy /proxy
# Create a virtual environment for Python
RUN python3 -m venv /opt/venv
ENV PATH="/opt/venv/bin:$PATH"
# Install Python dependencies inside the venv
RUN pip install --no-cache-dir -r /proxy/requirements.txt
# Persistent storage
VOLUME /data
# Expose HF port
EXPOSE 7860
# Start:
# - ConlluEditor on 5555
# - Upload API on 5556
# - Reverse proxy on 7860
ENV validator=none
CMD bash -c "\
mkdir -p /data && \
[ -f /data/default.conllu ] || echo '# empty' > /data/default.conllu && \
bash /usr/src/ConlluEditor/dockerstart.sh /data/default.conllu 5555 & \
python3 /proxy/upload_api.py --port 5556 & \
python3 /proxy/proxy_server.py --port 7860 \
"