Something went wrong. Try again.
A social pastebin built on atproto. morsels.blue
atproto python flask quartz
Something went wrong. Try again.
1234567891011121314151617181920212223242526272829303132333435FROM python:3.14-slim
WORKDIR /app
# Install uv for fast dependency managementCOPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv
# Install Tailwind CSS standalone CLIADD https://github.com/tailwindlabs/tailwindcss/releases/latest/download/tailwindcss-linux-x64 /usr/local/bin/tailwindcssRUN chmod +x /usr/local/bin/tailwindcss
# Copy dependency files first (layer caching)COPY pyproject.toml uv.lock ./
# Install dependenciesRUN uv sync --frozen --no-dev
# Copy application codeCOPY main.py config.py identity.py atproto_oauth.py schema.sql ./COPY templates/ templates/COPY static/input.css static/
# Build Tailwind CSSRUN tailwindcss -i static/input.css -o static/tailwind.css --minify
# Create data directory for secrets and databaseRUN mkdir -p /data
ENV MORSEL_DATA_DIR=/dataENV PYTHONUNBUFFERED=1
EXPOSE 8000
CMD ["uv", "run", "hypercorn", "main:app", "--bind", "0.0.0.0:8000"]