* fix: docker compose pull rate limit
with "registry.hub.docker.com/" behind the image name, there was an issue where "docker compose up -d" would throw a rate-limiting error, even when logged in using a docker account.
it doesn't really matter where the image is downloaded from as long as it has the same sha256 hash in docker-compose.yml
* fix: use `docker.io/` for image reference in docker-compose.yml
* feat: microservices be gone and api is a worker now too
* chore: remove very old startup scripts, surely nobody is using these anymore, right?
right?....
* basic changes
update version check
set ef_search for clip
* pgvector compatibility
Revert "pgvector compatibility"
This reverts commit 2b66a52aa4097dd27da58138c5288fd87cb9b24a.
pgvector compatibility: minimal edition
pgvector startup check
* update extension at startup
* wording
shortened vector extension variable name
* nightly docker
* fixed version checks
* update tests
add tests for updating extension
remove unnecessary check
* simplify `getRuntimeConfig`
* wording
* reindex on minor version update
* 0.2 upgrade testing
update prod compose
* acquire lock for init
* wip vector down on shutdown
* use upgrade helper
* update image tag
* refine restart check
check error message
* test reindex
testing
upstream fix
formatting
fixed reindexing
* use enum in signature
* fix tests
remove unused code
* add reindexing tests
* update to official 0.2
remove alpha from version name
* add warning test if restart required
* update test image to 0.2.0
* linting and test cleanup
* formatting
* update sql
* wording
* handle setting search path for new and existing databases
* handle new db in reindex check
* fix post-update reindexing
* get dim size
* formatting
* use vbase
* handle different db name
* update sql
* linting
* fix suggested env
* fix: pgvecto.rs extension breaks typeorm schema:drop command
* fix: parse postgres bigints to javascript number types when selecting data
* feat: verify file size is the same as original asset after copying file for storage template job
* feat: allow disabling of storage template job, defaults to disabled for new instances
* fix: don't allow setting concurrency for storage template migration, can cause race conditions above 1
* feat: add checksum verification when file is copied for storage template job
* fix: extract metadata for assets that aren't visible on timeline
* Allow building and installing cli
* feat: add format fix
* docs: remove cli folder
* feat: use immich scoped package
* feat: rewrite cli readme
* docs: add info on running without building
* cleanup
* chore: remove import functionality from cli
* feat: add logout to cli
* docs: add todo for file format from server
* docs: add compilation step to cli
* fix: success message spacing
* feat: can create albums
* fix: add check step to cli
* fix: typos
* feat: pull file formats from server
* chore: use crawl service from server
* chore: fix lint
* docs: add cli documentation
* chore: rename ignore pattern
* chore: add version number to cli
* feat: use sdk
* fix: cleanup
* feat: album name on windows
* chore: remove skipped asset field
* feat: add more info to server-info command
* chore: cleanup
* wip
* chore: remove unneeded packages
* e2e test can start
* git ignore for geocode in cli
* add cli e2e to github actions
* can do e2e tests in the cli
* simplify e2e test
* cleanup
* set matrix strategy in workflow
* run npm ci in server
* choose different working directory
* check out submodules too
* increase test timeout
* set node version
* cli docker e2e tests
* fix cli docker file
* run cli e2e in correct folder
* set docker context
* correct docker build
* remove cli from dockerignore
* chore: fix docs links
* feat: add cli v2 milestone
* fix: set correct cli date
* remove submodule
* chore: add npmignore
* chore(cli): push to npm
* fix: server e2e
* run npm ci in server
* remove state from e2e
* run npm ci in server
* reshuffle docker compose files
* use new e2e composes in makefile
* increase test timeout to 10 minutes
* make github actions run makefile e2e tests
* cleanup github test names
* assert on server version
* chore: split cli e2e tests into one file per command
* chore: set cli release working dir
* chore: add repo url to npmjs
* chore: bump node setup to v4
* chore: normalize the github url
* check e2e code in lint
* fix lint
* test key login flow
* feat: allow configurable config dir
* fix session service tests
* create missing dir
* cleanup
* bump cli version to 2.0.4
* remove form-data
* feat: allow single files as argument
* add version option
* bump dependencies
* fix lint
* wip use axios as upload
* version bump
* cApiTALiZaTiON
* don't touch package lock
* wip: don't use job queues
* don't use make for cli e2e
* fix server e2e
* chore: remove old gha step
* add npm ci to server
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
1. In the `docker-compose.dev.yml` file, increased ulimits for the containers that use TS code. This was one of the reasons for failures in my Podman (on macOS/arm64) environment. It wasn't the only failure with Podman, and didn't investigate further (I switched to Docker on Linux/amd64 after), but it can still help others.
2. Added a `make dev-down` to perform a `docker-compose down` on the dev environment
Signed-off-by: ItalyPaleAle <43508+ItalyPaleAle@users.noreply.github.com>
* added transcode configs for nvenc,qsv and vaapi
* updated dev docker compose
* added software fallback
* working vaapi
* minor fixes and added tests
* updated api
* compile libvips
* move hwaccel settings to `hwaccel.yml`
* changed default dockerfile, moved `readdir` call
* removed unused import
* minor cleanup
* fix for arm build
* added documentation, minor fixes
* added intel driver
* updated docs
styling
* uppercase codec and api names
* formatting
* added tests
* updated docs
* removed semicolons
* added link to `hwaccel.yml`
* added newlines
* added `hwaccel` section to docker-compose.prod.yml
* ensure mesa drivers are installed
* switch to mimalloc for sharp
* moved build version and sha256 to json
* let libmfx set the render device
* possible fix for vp9 on qsv
* updated tests
* formatting
* review suggestions
* semicolon
* moved `LD_PRELOAD` to start script
* switched to jellyfin's ffmpeg package
* fixed dockerfile
* use cqp instead of icq for qsv vp9
* updated dockerfile
* added sha256sum for other platforms
* fixtures
* Remove unnecessary PG_DATA environement variable from docker-compose.yml
There is no need to set the PostgreSQL data directory to the default location, it just adds an additional unnecessary line to the docker-compose file.
In addition, the PG_DATA isn't even the correct environment variable name (it should be PGDATA, see: https://hub.docker.com/_/postgres/), so this environment variable was never doing anything to begin with.
* Update docker-compose.dev.yml
* Update docker-compose.prod.yml
* Update docker-compose.test.yml
Previously, if you'd shut down the `make-dev` command and restart
the docker daemon (say, on a system reboot), there would be 3 immich
containers already running.
* using pydantic BaseSetting
* ML API takes image file as input
* keeping image in memory
* reducing duplicate code
* using bytes instead of UploadFile & other small code improvements
* removed form-multipart, using HTTP body
* format code
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
* updated dockerfile, added typing, packaging
apply env change
* added arm64 support
* added ml version pump, second try for arm64
* added linting config to pyproject.toml
* renamed ml input field
* fixed linter config
* fixed dev docker compose
A default entrypoint and command make it just a bit easier to use the images as
there is no longer a need for an explicit entrypoint. The exception is the
server image, which still requires the shell script to be specified.