From 1686e9fa1e5196abf3eef3676c2a7a743663e33a Mon Sep 17 00:00:00 2001 From: Limitex <76650151+Limitex@users.noreply.github.com> Date: Sat, 8 Nov 2025 19:55:30 +0900 Subject: [PATCH] chore: docker for developing --- .dockerignore | 8 ++++++-- .gitignore | 5 ++--- compose.yaml | 27 ++++++++++++++++++------- Dockerfile => docker/comfyui/Dockerfile | 2 -- docker/dev/Dockerfile | 24 ++++++++++++++++++++++ docker/models/checkpoints/.gitkeep | 0 docker/models/loras/.gitkeep | 0 docker/models/vae/.gitkeep | 0 docker/output/.gitkeep | 0 docker/workflows/.gitkeep | 0 10 files changed, 52 insertions(+), 14 deletions(-) rename Dockerfile => docker/comfyui/Dockerfile (83%) create mode 100644 docker/dev/Dockerfile delete mode 100644 docker/models/checkpoints/.gitkeep delete mode 100644 docker/models/loras/.gitkeep delete mode 100644 docker/models/vae/.gitkeep delete mode 100644 docker/output/.gitkeep delete mode 100644 docker/workflows/.gitkeep diff --git a/.dockerignore b/.dockerignore index 1a5e08c..23a647f 100644 --- a/.dockerignore +++ b/.dockerignore @@ -215,6 +215,12 @@ __marimo__/ # Streamlit .streamlit/secrets.toml +# Temporary files +tmp/ + +# Docker +docker/ + # Hugging Face artifacts *.safetensors *.vae @@ -256,5 +262,3 @@ Thumbs.db # Development tools config .pre-commit-config.yaml .commitizenrc -pyproject.toml -poetry.lock diff --git a/.gitignore b/.gitignore index 5e896f1..6aab400 100644 --- a/.gitignore +++ b/.gitignore @@ -215,9 +215,8 @@ __marimo__/ # Streamlit .streamlit/secrets.toml -# Docker files -docker/ -!docker/.gitkeep +# Temporary files +tmp/ # Hugging Face artifacts *.safetensors diff --git a/compose.yaml b/compose.yaml index abcea19..580f3b9 100644 --- a/compose.yaml +++ b/compose.yaml @@ -1,6 +1,8 @@ services: comfyui: - build: . + build: + context: . + dockerfile: docker/comfyui/Dockerfile container_name: comfyui runtime: nvidia environment: @@ -11,15 +13,26 @@ services: - POETRY_NO_INTERACTION=1 - POETRY_CACHE_DIR=/tmp/poetry_cache volumes: - - ./docker/models/checkpoints:/app/ComfyUI/models/checkpoints - - ./docker/models/loras:/app/ComfyUI/models/loras - - ./docker/models/vae:/app/ComfyUI/models/vae - - ./docker/output:/app/ComfyUI/output - - ./docker/workflows:/app/ComfyUI/user/default/workflows - - ./docker/tmp:/app/ComfyUI/temp + - ./tmp/models/checkpoints:/app/ComfyUI/models/checkpoints + - ./tmp/models/loras:/app/ComfyUI/models/loras + - ./tmp/models/vae:/app/ComfyUI/models/vae + - ./tmp/output:/app/ComfyUI/output + - ./tmp/workflows:/app/ComfyUI/user/default/workflows + - ./tmp/tmp:/app/ComfyUI/temp - .:/app/ComfyUI/custom_nodes/ComfyUI-Diffusers ports: - "8188:8188" restart: unless-stopped stdin_open: true tty: true + + dev: + build: + context: . + dockerfile: docker/dev/Dockerfile + volumes: + - .:/app + - venv_data:/cache/.venv + +volumes: + venv_data: diff --git a/Dockerfile b/docker/comfyui/Dockerfile similarity index 83% rename from Dockerfile rename to docker/comfyui/Dockerfile index 1872f91..78c859f 100644 --- a/Dockerfile +++ b/docker/comfyui/Dockerfile @@ -12,8 +12,6 @@ RUN apt-get update && \ git \ curl \ build-essential \ - && curl -1sLf 'https://dl.cloudsmith.io/public/task/task/setup.deb.sh' | bash \ - && curl -sSL 'https://install.python-poetry.org' | python - \ && pip install --no-cache-dir -r requirements.txt \ && apt-get remove -y build-essential curl \ && apt-get autoremove -y && \ diff --git a/docker/dev/Dockerfile b/docker/dev/Dockerfile new file mode 100644 index 0000000..db0dd4d --- /dev/null +++ b/docker/dev/Dockerfile @@ -0,0 +1,24 @@ +FROM python:3.11-slim-bookworm +ENV POETRY_HOME="/opt/poetry" +ENV POETRY_VERSION="2.2.1" +ENV POETRY_VIRTUALENVS_PATH="/cache/.venv" +ENV POETRY_VIRTUALENVS_IN_PROJECT="false" +ENV PATH="$POETRY_HOME/bin:$PATH" +WORKDIR /app +RUN mkdir -p /cache/.venv && chmod 777 /cache/.venv +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + git \ + curl \ + build-essential \ + ca-certificates \ + && curl -sSL https://install.python-poetry.org | python - \ + && curl -1sLf 'https://dl.cloudsmith.io/public/task/task/setup.deb.sh' | bash \ + && apt-get update \ + && apt-get install -y task \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* +RUN poetry self add \ + poetry-plugin-export \ + poetry-plugin-shell +RUN task --version && poetry --version diff --git a/docker/models/checkpoints/.gitkeep b/docker/models/checkpoints/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/docker/models/loras/.gitkeep b/docker/models/loras/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/docker/models/vae/.gitkeep b/docker/models/vae/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/docker/output/.gitkeep b/docker/output/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/docker/workflows/.gitkeep b/docker/workflows/.gitkeep deleted file mode 100644 index e69de29..0000000