feat(cli): dockerize (#6858)

* import dockerfile from old cli

* build works

* rename login command

* bump packages

* fix login command

* chore: remove axios dependency from CLI

* move immich script path

* can build docker

* wip

* wip

* don't externalize sdk

* can run docker

* improve entrypoint

* can save auth state between runs

* add docs

* clarify reqs

* fix lint

* bump alpine to 3.19

* add env files for api key

* remove immich cli GHA for now

* Update docs/docs/features/command-line-interface.md

Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>

* remove redundant env variable check

* cleanup

* speling

---------

Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
This commit is contained in:
Jonathan Jogenfors 2024-02-06 12:17:15 +01:00 committed by GitHub
parent 9b3764dbcf
commit 31eb4790dc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 46 additions and 31 deletions

View file

@ -15,10 +15,12 @@ If you are looking to import your Google Photos takeout, we recommend this commu
## Requirements
- Node.js 20.0 or above
- Node.js 20 or above
- Npm
## Installation
If you can't install node/npm, there is also a Docker version available below.
## Installation (NPM)
```bash
npm i -g @immich/cli
@ -30,6 +32,16 @@ NOTE: if you previously installed the legacy CLI, you will need to uninstall it
npm uninstall -g immich
```
## Installation (Docker)
If npm is not available on your system you can try the Docker version
```bash
docker run -it -v "$(pwd)":/import:ro -e IMMICH_API_KEY=https://your-immich-instance/api -e IMMICH_API_KEY=your-api-key ghcr.io/immich-app/immich-cli:latest
```
Please modify the `IMMICH_INSTANCE_URL` and `IMMICH_API_KEY` environment variables as suitable. You can also use a Docker env file to store your sensitive API key.
## Usage
```