diff options
| author | Klas Mellbourn <klas@mellbourn.net> | 2022-06-26 20:40:36 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-06-26 18:40:36 +0000 |
| commit | f946644cebb94bb62646cce6fcf3900fe71e2bea (patch) | |
| tree | 3acb299f0d8677bc919b81aa80f9fa1db0579357 /docs/docker.md | |
| parent | Add Fig as an installation method to the README (#459) (diff) | |
| download | atuin-f946644cebb94bb62646cce6fcf3900fe71e2bea.zip | |
Add kubernetes instructions and manifests (#427)
* add kubernetes instructions
* minor wording improvements
* better password instructions
* add information about changed port
* improved grammar
* Separate docker and k8s docs
Add k8s folder for kubernetes configs
Diffstat (limited to 'docs/docker.md')
| -rw-r--r-- | docs/docker.md | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/docs/docker.md b/docs/docker.md new file mode 100644 index 00000000..9b035a62 --- /dev/null +++ b/docs/docker.md @@ -0,0 +1,90 @@ +## Docker + +There is a supplied docker image to make deploying a server as a container easier. + +```sh +docker run -d -v "$USER/.config/atuin:/config" ghcr.io/ellie/atuin:latest server start +``` + +## Docker Compose + +Using the already build docker image hosting your own Atuin can be done using the supplied docker-compose file. + +Create a `.env` file next to `docker-compose.yml` with contents like this: + +``` +ATUIN_DB_USERNAME=atuin +# Choose your own secure password +ATUIN_DB_PASSWORD=really-insecure +``` + +Create a `docker-compose.yml`: + +```yaml +version: '3.5' +services: + atuin: + restart: always + image: ghcr.io/ellie/atuin:main + command: server start + volumes: + - "./config:/config" + links: + - postgresql:db + ports: + - 8888:8888 + environment: + ATUIN_HOST: "0.0.0.0" + ATUIN_OPEN_REGISTRATION: "true" + ATUIN_DB_URI: postgres://$ATUIN_DB_USERNAME:$ATUIN_DB_PASSWORD@db/atuin + postgresql: + image: postgres:14 + restart: unless-stopped + volumes: # Don't remove permanent storage for index database files! + - "./database:/var/lib/postgresql/data/" + environment: + POSTGRES_USER: $ATUIN_DB_USERNAME + POSTGRES_PASSWORD: $ATUIN_DB_PASSWORD + POSTGRES_DB: atuin +``` + +Start the services using `docker-compose`: + +```sh +docker-compose up -d +``` + +### Using systemd to manage your atuin server + +The following `systemd` unit file to manage your `docker-compose` managed service: + +``` +[Unit] +Description=Docker Compose Atuin Service +Requires=docker.service +After=docker.service + +[Service] +# Where the docker-compose file is located +WorkingDirectory=/srv/atuin-server +ExecStart=/usr/bin/docker-compose up +ExecStop=/usr/bin/docker-compose down +TimeoutStartSec=0 +Restart=on-failure +StartLimitBurst=3 + +[Install] +WantedBy=multi-user.target +``` + +Start and enable the service with: + +```sh +systemctl enable --now atuin +``` + +Check if its running with: + +```sh +systemctl status atuin +``` |
