A ready-to-deploy docker compose setup for ocular
To download the latest release and start it via docker-compose, run:
bash <(curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/simonwep/ocular-docker/refs/heads/main/setup.sh)
Note
This will perform the same steps as described in the manual setup section and ask you questions if needed. You can always take a look at the script before running it, or perform these steps manually.
This is the docker-compose setup for ocular. To deploy it, follow these steps:
- Download the latest release and extract it. Do not clone this repository!
- Copy the
.env.example
to.env
, if your app is only used locally make sure to setGENESIS_JWT_COOKIE_ALLOW_HTTP
totrue
if you want to use it without https, for example in an isolated network. - Run
./gen-passwords.sh
to generate secrets and an initial admin user. - Run
docker compose up -d
. - Ocular should be accessible under
http://localhost:3030
in your browser :)
Note
Usually it's sufficient to just bump the version inside the docker-compose.yml
file.
However, sometimes new versions require new .env
-variables or changes in the config folder.
This guide is to be 100%-sure that everything works as expected - but it's not always necessary.
To migrate to a newer version, follow these steps:
- Stop all containers with
docker compose down
. - Backup the
./data
folder and your.env
file. - Download the latest release and extract it.
- Copy your old
./data
folder and.env
to the new directory, compare the.env.example
with your.env
and copy default values if needed. - Run
docker compose up -d
.
You can use genesis's CLI to manage users. For example, to change a user's password:
docker run --rm -v "$(pwd)/data:/app/.data" --env-file .env ghcr.io/simonwep/genesis:latest users update --password {new password} {username}
For help run:
docker run --rm -v "$(pwd)/data:/app/.data" --env-file .env ghcr.io/simonwep/genesis:latest help
Head over to the FAQs for more information.