Files
baseldosdados/Dockerfile
rafapolo 9eb2dee013 containerize with Haloy: Dockerfile, Caddy basicauth, haloy.yml for db.xn--2dk.xyz
- Dockerfile: debian slim, installs DuckDB CLI, Python deps, Caddy
- start.sh: runs prepara_db.py → starts Caddy (basicauth) → starts DuckDB UI
- Caddyfile: updated for container (no TLS, port 8080, Haloy handles HTTPS)
- haloy.yml: deploys to db.xn--2dk.xyz on port 8080
- requirements.txt: duckdb, boto3, python-dotenv
- prepara_db.py, open_gui.sh, duckdb-ui.service: add previously untracked files
- remove prepara_gui.py (replaced by prepara_db.py)
2026-03-25 13:23:59 +01:00

32 lines
861 B
Docker

FROM debian:12-slim
ENV DEBIAN_FRONTEND=noninteractive
# System deps + Caddy
RUN apt-get update -qq && \
apt-get install -y --no-install-recommends \
python3 python3-pip python3-venv \
curl ca-certificates unzip && \
# Caddy
curl -fsSL https://caddyserver.com/install.sh | bash && \
# DuckDB CLI
curl -fsSL \
"https://github.com/duckdb/duckdb/releases/latest/download/duckdb_cli-linux-amd64.zip" \
-o /tmp/duckdb.zip && \
unzip /tmp/duckdb.zip -d /usr/local/bin && \
chmod +x /usr/local/bin/duckdb && \
rm /tmp/duckdb.zip && \
apt-get clean && rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY requirements.txt .
RUN pip3 install --no-cache-dir --break-system-packages -r requirements.txt
COPY prepara_db.py Caddyfile start.sh ./
RUN chmod +x start.sh
EXPOSE 8080
ENTRYPOINT ["./start.sh"]