FROM debian:latest AS puppy | |
# prep | |
RUN apt-get update \ | |
&& apt-get install -y curl \ | |
&& apt-get clean | |
RUN useradd -m -u 1000 user | |
USER user | |
ENV HOME=/home/user \ | |
PATH=/home/user/.pixi/bin:$PATH \ | |
PUP=/home/user/.pixi/bin/pup | |
RUN mkdir $HOME/puppy | |
WORKDIR $HOME/puppy | |
# install puppy | |
RUN curl -fsSL https://raw.githubusercontent.com/liquidcarbon/puppy/main/pup.sh | bash -s 3.12 | |
RUN echo '#!/bin/bash\n/home/user/puppy/pup.py "$@"' > $PUP && chmod +x $PUP | |
RUN pup | |
RUN pixi run uv init mo | |
RUN pup fetch mo marimo pandas | |
RUN pup list mo | |
RUN cp -r mo/.venv/lib/python3.12/site-packages/marimo/_tutorials . && mv _tutorials marimo_tutorials | |
EXPOSE 7860 | |
CMD ["pixi", "run", "mo/.venv/bin/marimo", "tutorial", "intro", "--host", "0.0.0.0", "--port", "7860", "--no-token"] | |
# deploy without installing | |
# CMD ["pixi", "run", "uvx", "marimo", "tutorial", "intro", "--host", "0.0.0.0", "--port", "7860", "--no-token"] |