PrimeTime / Dockerfile
Shinhati2023's picture
Create Dockerfile
9b7e04d verified
Raw
History Blame Contribute Delete
1.1 kB
FROM ubuntu:22.04
# Prevent tzdata/interactive prompts during apt-get
ENV DEBIAN_FRONTEND=noninteractive
# Install dependencies and OpenSSH server
# We create /run/sshd here as root because the daemon expects the directory to exist,
# even when run later as a non-root user.
RUN apt-get update && \
apt-get install -y wget openssh-server python3 && \
mkdir -p /run/sshd && \
chmod 755 /run/sshd && \
rm -rf /var/lib/apt/lists/*
# Download and install the latest cloudflared binary
RUN wget -q https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb && \
dpkg -i cloudflared-linux-amd64.deb && \
rm cloudflared-linux-amd64.deb
# Create the non-root user (Hugging Face expects UID 1000)
RUN useradd -m -u 1000 -s /bin/bash user
USER user
ENV HOME=/home/user \
PATH=/home/user/.local/bin:$PATH
WORKDIR $HOME
# Copy the startup script and set permissions
COPY --chown=user:user start.sh $HOME/start.sh
RUN chmod +x $HOME/start.sh
# Expose the HF health-check port and the internal SSH port
EXPOSE 7860 2222
CMD ["./start.sh"]