Commit Graph

67 Commits

Author SHA1 Message Date
Eugene Brodsky
a5771f6120 chore(docker): remove outdated comments from docker-compose 2024-03-21 10:34:52 -04:00
Eugene Brodsky
35f847d5b7 fix(docker): add env vars for host and port to the Dockerfile 2024-03-21 10:34:52 -04:00
Eugene Brodsky
3278497674 feat(docker): remove separate pre-installation of PyTorch in the image 2024-03-21 10:34:52 -04:00
Eugene Brodsky
c9350f71be feat(docker): improve directory handling and expand environment variable documentation 2024-03-21 10:34:52 -04:00
Eugene Brodsky
b00e27b022 fix(docker): ensure the container has write permission to the runtime directory 2024-03-21 10:34:52 -04:00
psychedelicious
1069303309 fix(config): remove configure arg & logic from docker image 2024-03-20 15:05:25 +11:00
Copper Phosphate
c5aeb36230 fix: repair Dockerfile for ROCm
With these changes, the Docker image can be built and executed
successfully on hosts with AMD devices with ROCm acceleration.
Previously, a ROCm-enabled version of torch would be installed, but
later removed during installation of InvokeAI itself. This was caused by
InvokeAI needing a newer torch version than was previously installed.

The fix consists of multiple components:
* Update the hardcoded versions of torch and torchvision to the versions
  currently used in pyproject.toml, so that a new version need not be
  installed during installation of InvokeAI.
* Specify --extra-index-url on installation of InvokeAI so that even if
  a verison mismatch occurs, the correct torch version should still be
  installed. This also necessitates changing --index-url to
  --extra-index-url for the Torch repo. Otherwise non-torch dependencies
  would not be found.
* In run.sh, build the image for the selected service.
2024-02-14 22:25:40 -05:00
Adam Monsen
156d4ec3b2 fix references to .env.sample 2024-02-10 21:11:22 -08:00
Eugene Brodsky
968fb655a4
Report ci disk space + minor docker fixes (#5461)
* ci: add docker build timout; log free space on runner before and after build

* docker: bump frontend builder to node=20.x; skip linting on build

* chore: gitignore .pnpm-store

* update code owners for docker and CI

---------

Co-authored-by: Millun Atluri <Millu@users.noreply.github.com>
2024-01-10 05:20:26 +00:00
David Sisco
5413bf07e2
Sisco/docker allow relative paths for invokeai data (#5344)
* Update docker-compose.yml to bind local data path

* Update LOCAL_DATA_PATH in .env.sample

* Add fallback to INVOKEAI_ROOT envar if LOCAL_DATA_PATH not present.

* rename LOCAL_DATA_PATH to INVOKAI_LOCAL_ROOT

* Whoops, didnt mean to include this

* Update docker/docker-compose.yml

Co-authored-by: Eugene Brodsky <ebr@users.noreply.github.com>

* [chore] rename envar

* Apply suggestions from code review

---------

Co-authored-by: Eugene Brodsky <ebr@users.noreply.github.com>
2024-01-02 13:17:57 +00:00
Eugene Brodsky
88c1af969f update docker setup, improve docs, fix variable value
Fixes #5336
2023-12-23 08:53:19 -05:00
Sam
a4f9bfc8f7 Update Dockerfile 2023-12-19 18:38:36 -05:00
Sam
9afdd0f4a8 Update Dockerfile 2023-12-19 18:38:36 -05:00
Sam McLeod
bee6ad1547 fix(pnpm): replace npm with pnpm in dockerfile 2023-12-19 18:38:36 -05:00
Wilson E. Alvarez
296060db63 Add cpu and rocm profiles. Let invokeai-nvidia service be the default. 2023-12-13 23:23:43 -05:00
Wilson E. Alvarez
d1d8ee71fc Simplify docker compose setup 2023-12-13 23:23:43 -05:00
Sam
11f4a48144 Add container GID 2023-12-11 14:30:40 -05:00
Sam
67ed4a0245 Respect CONTAINER_UID in Dockerfile chown
CONTAINER_UID is used for the user ID within the container, however I noticed the UID was hard coded to 1000 in the Dockerfile chown -R command.

This leaves the default as 1000, but allows it to be overrriden by setting CONTAINER_UID.
2023-12-11 14:30:40 -05:00
Wilson E. Alvarez
76b3f8956b Fix ROCm support in Docker container 2023-11-06 13:47:08 -08:00
Eugene Brodsky
575c7bbfd8 feat(docker): update docker documentation 2023-10-19 11:26:36 -04:00
Eugene Brodsky
f102e38076 feat(docker): update docker image, etc. to python3.11+ubuntu23.04 2023-10-19 11:26:16 -04:00
Mitchell Allain
0b2925709c Use double quotes in docker entrypoint to prevent word splitting 2023-08-13 14:36:55 -05:00
Eugene Brodsky
0b0efa82e9 (docker) ROCm support fixes - contributed by @Rubonnek 2023-07-12 16:51:15 -04:00
Eugene Brodsky
d6da7ad922 (docker) dockerfile fixes including PR feedback
When previously using base Debian-ish images, the Invoke image
failed to find CUDA drivers on some RHEL-ish distributions
2023-07-12 16:51:15 -04:00
Brandon Rising
c910376bb6 Don't use .env file lines where = is at the end of the line 2023-07-12 16:51:15 -04:00
Brandon Rising
a674fff17a Update dockerignore, set venv to 3.10, pass cache to yarn vite buidl 2023-07-12 16:51:15 -04:00
Brandon Rising
674f42ba9a Pass env vars as build-args, ensure node modules isn't getting passed in 2023-07-12 16:51:15 -04:00
Eugene Brodsky
3b1eeda4d4 (docker) only install default models when running the container against a new runtime directory 2023-07-12 16:51:15 -04:00
Eugene Brodsky
72a11ec4bc (docker) use docker-compose in deprecated build scripts
temporarily retaining the build scripts for backwards compatibility
2023-07-12 16:51:15 -04:00
Eugene Brodsky
e9bc8254dd (docker) add a README for the docker setup 2023-07-12 16:51:15 -04:00
Eugene Brodsky
2a5737c146 (docker) add README used by the Runpod template 2023-07-12 16:51:15 -04:00
Eugene Brodsky
f3b45d0ad9 (docker) rewrite container implementation with docker-compose support
- rewrite Dockerfile
- add a stage to build the UI
- add docker-compose.yml
- add docker-entrypoint.sh such that any command may be used at runtime
- docker-compose adds .env support - add a sample .env file
2023-07-12 16:51:15 -04:00
mauwii
2d9fac23e7
fix Dockerfile
- update broken paths after restructure
2023-03-04 23:51:07 +01:00
mauwii
92304b9f8a
remove pip-tools, still split requirements install
- also use user:group for definitions
- add `--platform=${TARGETPLATFORM}` to base
2023-02-26 00:53:43 +01:00
mauwii
ec1de5ae8b
more detailed volume parameters 2023-02-26 00:51:30 +01:00
mauwii
49198a61ef
enable BuildKit in env.sh 2023-02-26 00:50:13 +01:00
mauwii
90cda11868
separate installation of requirements and source
this should highly increase rebuilding of the image when:
- version did not change
- requirements didn't change
2023-02-24 03:51:18 +01:00
fattire
b08a514594 missed one. 2023-02-14 17:49:01 -08:00
fattire
7aa6c827f7 fix minor typos 2023-02-14 17:38:21 -08:00
mauwii
7be5b4ca8b
update Dockerfile
- introduce build arg `VOLUME_DIR`
- fix permissions of the Volume
2023-02-10 22:55:19 +01:00
mauwii
8bd04654c7
remove Trash folder if existing 2023-02-09 04:00:51 +01:00
mauwii
106c7aa956
bindmount outputs directory to ./docker/outputs 2023-02-09 02:48:12 +01:00
mauwii
2ea551d37d
create user home, expose port 2023-02-09 00:56:09 +01:00
mauwii
05d51d7b5b
re-use --link, lock pip cache 2023-02-08 23:45:15 +01:00
mauwii
09f69a4d28
Add output when activating venv 2023-02-08 23:39:28 +01:00
mauwii
a338af17c8
Initialize PIP_CACHE_DIR after setting the env 2023-02-08 23:17:15 +01:00
mauwii
888d3ae968
cleanup Dockerfile 2023-02-08 21:54:06 +01:00
mauwii
a28120abdd
small improvements to env.sh 2023-02-08 21:53:57 +01:00
mauwii
4493d83aea
update docker-scripts instructions 2023-02-08 21:35:19 +01:00
mauwii
5bb0f9bedc
update Dockerfile - more simple user creation 2023-02-08 19:57:41 +01:00