Omnirouter / Dockerfile
Nerdur's picture
Upload Dockerfile
66ecbcd verified
Raw History Blame Contribute Delete
1.12 kB
# Ponovo koristi zvanični, već izgrađeni OmniRoute image (tag "latest" = "base"
# stage: bez CLI alata, bez potrebe za Docker-in-Docker, najlakši za Spaces).
# Ne treba nam kloniranje celog repoa niti biranje build "target"-a - HF Spaces
# ionako gradi samo poslednji (default) stage Dockerfile-a, pa je najsigurnije
# jednostavno preuzeti gotov, već ispravno sastavljen image.
FROM diegosouzapw/omniroute:latest
# Bazni image podrazumevano radi kao ne-root korisnik ("node"). HF Spaces
# Persistent Storage montira /data sa vlasništvom koje taj korisnik ne može
# da piše (EACCES), pa aplikacija automatski prelazi na efemerni folder.
# Vraćanjem na root, kontejner sme da piše u /data bez obzira na vlasništvo.
USER root
# Port na kome OmniRoute sluša (mora se poklapati sa "app_port" u README.md).
ENV PORT=20128
ENV HOSTNAME=0.0.0.0
# Podaci (SQLite baza, API ključevi, OAuth konekcije) idu podrazumevano u /app/data.
# Storage bucket je mount-ovan na /data (Nerdur/Omnirouter-storage), pa baza
# sada treba da živi tamo da bi preživela restart/rebuild Space-a.
ENV DATA_DIR=/data
EXPOSE 20128