[GH-ISSUE #14] Install documentation: What do I do with HOARDER_VERSION=release? What release is docker going to give me when I run it? #12

Closed
opened 2026-03-02 11:45:37 +03:00 by kerem · 8 comments
Owner

Originally created by @iconoclasthero on GitHub (Mar 27, 2024).
Original GitHub issue: https://github.com/karakeep-app/karakeep/issues/14

Please explain what is supposed to populate in HOARDER_VERSION. You don't mention that here and it's not in the links there.... am I supposed to guess what it is? Should I guess that it supposed to be "release?" Should I guess that I go to the git and grab the current version? If the last, am I to change that every time docker changes the version? This is confusing and thus frustrating...

https://docs.hoarder.app/installation

3. Populate the environment variables

To configure the app, create a .env file in the directory and add this minimal env file:

NEXTAUTH_SECRET=super_random_string
HOARDER_VERSION=release
MEILI_MASTER_KEY=another_random_string

You should change the random strings. You can use openssl rand -base64 36 to generate the random strings.

Persistent storage and the wiring between the different services is already taken care of in the docker compose file.

Keep in mind that every time you change the .env file, you'll need to re-run docker compose up.

If you want more config params, check the config documentation here.

Originally created by @iconoclasthero on GitHub (Mar 27, 2024). Original GitHub issue: https://github.com/karakeep-app/karakeep/issues/14 Please explain what is supposed to populate in HOARDER_VERSION. You don't mention that here and it's not in the links there.... am I supposed to guess what it is? Should I guess that it supposed to be "release?" Should I guess that I go to the git and grab the current version? If the last, am I to change that every time docker changes the version? This is confusing and thus frustrating... https://docs.hoarder.app/installation ### 3. Populate the environment variables To configure the app, create a .env file in the directory and add this minimal env file: ``` NEXTAUTH_SECRET=super_random_string HOARDER_VERSION=release MEILI_MASTER_KEY=another_random_string ``` You should change the random strings. You can use openssl rand -base64 36 to generate the random strings. Persistent storage and the wiring between the different services is already taken care of in the docker compose file. Keep in mind that every time you change the .env file, you'll need to re-run docker compose up. If you want more config params, check the config documentation [here](https://docs.hoarder.app/configuration).
kerem 2026-03-02 11:45:37 +03:00
  • closed this issue
  • added the
    question
    label
Author
Owner

@iconoclasthero commented on GitHub (Mar 27, 2024):

It's moot anyway, my docker-compose is broken so unless you can give me a docker cli version I'm done for now.

<!-- gh-comment-id:2022132565 --> @iconoclasthero commented on GitHub (Mar 27, 2024): It's moot anyway, my docker-compose is broken so unless you can give me a docker cli version I'm done for now.
Author
Owner

@MohamedBassem commented on GitHub (Mar 27, 2024):

release is a docker tag (similar to latest for example) (https://github.com/MohamedBassem/hoarder-app/pkgs/container/hoarder-web). If you keep it as release, you'll pull the latest released version. Otherwise, you can pin it to one specific version (e.g. 0.9.0). I can clarify the docs to indicate that leaving it as is should be fine.

Not sure what problems you're facing with docker compose, works fine with me and this is my docker cli version:

 docker -v                                                                                                                                            
Docker version 25.0.3, build 4debf41

If you share the problem, you're facing, I'd be happy to help you get it up and running :)

<!-- gh-comment-id:2022155644 --> @MohamedBassem commented on GitHub (Mar 27, 2024): `release` is a docker tag (similar to `latest` for example) (https://github.com/MohamedBassem/hoarder-app/pkgs/container/hoarder-web). If you keep it as `release`, you'll pull the latest released version. Otherwise, you can pin it to one specific version (e.g. `0.9.0`). I can clarify the docs to indicate that leaving it as is should be fine. Not sure what problems you're facing with docker compose, works fine with me and this is my docker cli version: ``` docker -v Docker version 25.0.3, build 4debf41 ``` If you share the problem, you're facing, I'd be happy to help you get it up and running :)
Author
Owner

@iconoclasthero commented on GitHub (Mar 27, 2024):

Hey, thanks.

Someone on the Rhino linux discord spotted the problem:

Because you're using the ancient docker-compose
It has been docker compose for a long time now

which I don't understand why docker-compose is still around on a system that's < a month old

$ cat /etc/apt/sources.list.d/docker.list ; ll /etc/apt/sources.list.d/docker.list 
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu   mantic stable
.rw-r--r-- 113 root 10 Mar 18:19 /etc/apt/sources.list.d/docker.list

but i've taken steps to ameliorate this:
$ sudo mv /bin/docker-compose /bin/docker-compose~
alias docker-compose='docker compose up -d
should prevent an reoccurrance.

guess I never got the memo since i really don't want to understand or even use docker. in no way has it made things simpler for me vs. just running things on systemd...

Anyway, it's not working...and I'm not sure where to look and I've not had a chance to look at logs yet so... is there a discord or anything?

<!-- gh-comment-id:2023180561 --> @iconoclasthero commented on GitHub (Mar 27, 2024): Hey, thanks. Someone on the Rhino linux discord spotted the problem: > Because you're using the ancient `docker-compose` > It has been `docker compose` for a long time now which I don't understand why docker-compose is still around on a system that's < a month old ``` $ cat /etc/apt/sources.list.d/docker.list ; ll /etc/apt/sources.list.d/docker.list deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu mantic stable .rw-r--r-- 113 root 10 Mar 18:19 /etc/apt/sources.list.d/docker.list ``` **but** i've taken steps to ameliorate this: `$ sudo mv /bin/docker-compose /bin/docker-compose~` `alias docker-compose='docker compose up -d` should prevent an reoccurrance. guess I never got the memo since i really don't want to understand or even use docker. in no way has it made things simpler for me vs. just running things on systemd... Anyway, it's not working...and I'm not sure where to look and I've not had a chance to look at logs yet so... is there a discord or anything?
Author
Owner

@iconoclasthero commented on GitHub (Mar 27, 2024):

Here are all the docker logs:

 for i in hoarder-chrome-1       hoarder-redis-1        hoarder-workers-1  hoarder-meilisearch-1  hoarder-web-1; do printf '\n\nThis is `docker logs %s`: \n\n' "$i"; docker logs "$i"; done


This is `docker logs hoarder-chrome-1`: 

[0327/163619.302245:ERROR:bus.cc(397)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory
[0327/163619.302326:ERROR:bus.cc(397)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory
[0327/163619.302962:WARNING:dns_config_service_linux.cc(427)] Failed to read DnsConfig.

DevTools listening on ws://0.0.0.0:9222/devtools/browser/f33fa04d-d495-4388-ae52-cb2193d57718
[0327/163619.307594:ERROR:gpu_init.cc(446)] Passthrough is not supported, GL is disabled, ANGLE is 
[0327/163619.320535:WARNING:bluez_dbus_manager.cc(248)] Floss manager not present, cannot set Floss enable/disable.


This is `docker logs hoarder-redis-1`: 

1:C 27 Mar 2024 16:36:19.119 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
1:C 27 Mar 2024 16:36:19.119 * oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 27 Mar 2024 16:36:19.119 * Redis version=7.2.4, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 27 Mar 2024 16:36:19.119 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
1:M 27 Mar 2024 16:36:19.120 * monotonic clock: POSIX clock_gettime
1:M 27 Mar 2024 16:36:19.121 * Running mode=standalone, port=6379.
1:M 27 Mar 2024 16:36:19.121 * Server initialized
1:M 27 Mar 2024 16:36:19.122 * Loading RDB produced by version 7.2.4
1:M 27 Mar 2024 16:36:19.122 * RDB age 621 seconds
1:M 27 Mar 2024 16:36:19.122 * RDB memory usage when created 1.41 Mb
1:M 27 Mar 2024 16:36:19.122 * Done loading RDB, keys loaded: 3, keys expired: 3.
1:M 27 Mar 2024 16:36:19.122 * DB loaded from disk: 0.000 seconds
1:M 27 Mar 2024 16:36:19.122 * Ready to accept connections tcp


This is `docker logs hoarder-workers-1`: 

Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-8.15.5.tgz.

> @hoarder/workers@0.1.0 start:prod /app/apps/workers
> tsx index.ts

2024-03-27T16:36:23.133Z info: Connecting to existing browser instance: http://chrome:9222
(node:34) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
2024-03-27T16:36:23.149Z info: Successfully resolved IP address, new address: http://172.20.0.5:9222/
2024-03-27T16:36:25.004Z info: Starting crawler worker ...
2024-03-27T16:36:25.006Z info: Starting inference worker ...
2024-03-27T16:36:25.006Z info: Starting search indexing worker ...


This is `docker logs hoarder-meilisearch-1`: 


888b     d888          d8b 888 d8b                                            888
8888b   d8888          Y8P 888 Y8P                                            888
88888b.d88888              888                                                888
888Y88888P888  .d88b.  888 888 888 .d8888b   .d88b.   8888b.  888d888 .d8888b 88888b.
888 Y888P 888 d8P  Y8b 888 888 888 88K      d8P  Y8b     "88b 888P"  d88P"    888 "88b
888  Y8P  888 88888888 888 888 888 "Y8888b. 88888888 .d888888 888    888      888  888
888   "   888 Y8b.     888 888 888      X88 Y8b.     888  888 888    Y88b.    888  888
888       888  "Y8888  888 888 888  88888P'  "Y8888  "Y888888 888     "Y8888P 888  888

Config file path:	"none"
Database path:		"./data.ms"
Server listening on:	"http://0.0.0.0:7700"
Environment:		"development"
Commit SHA:		"1a083d54fc2840ac59530e5395397211cace35be"
Commit date:		"2024-02-13T14:47:34+00:00"
Package version:	"1.6.2"

Thank you for using Meilisearch!


We collect anonymized analytics to improve our product and your experience. To learn more, including how to turn off analytics, visit our dedicated documentation page: https://www.meilisearch.com/docs/learn/what_is_meilisearch/telemetry

Anonymous telemetry:	"Enabled"
Instance UID:		"06b4882f-f286-484c-913b-b25e280918b4"

A master key has been set. Requests to Meilisearch won't be authorized unless you provide an authentication key.

Check out Meilisearch Cloud!	https://www.meilisearch.com/cloud?utm_campaign=oss&utm_source=engine&utm_medium=cli
Documentation:			https://www.meilisearch.com/docs
Source code:			https://github.com/meilisearch/meilisearch
Discord:			https://discord.meilisearch.com

[2024-03-27T16:36:19Z INFO  actix_server::builder] starting 4 workers
[2024-03-27T16:36:19Z INFO  actix_server::server] Actix runtime found; starting in Actix runtime


This is `docker logs hoarder-web-1`: 

   ▲ Next.js 14.1.4
   - Local:        http://localhost:3000
   - Network:      http://0.0.0.0:3000

 ✓ Ready in 353ms

Need to actually do some work as opposed to f-around with this computer all day again!

<!-- gh-comment-id:2023247873 --> @iconoclasthero commented on GitHub (Mar 27, 2024): Here are all the docker logs: ``` for i in hoarder-chrome-1 hoarder-redis-1 hoarder-workers-1 hoarder-meilisearch-1 hoarder-web-1; do printf '\n\nThis is `docker logs %s`: \n\n' "$i"; docker logs "$i"; done This is `docker logs hoarder-chrome-1`: [0327/163619.302245:ERROR:bus.cc(397)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory [0327/163619.302326:ERROR:bus.cc(397)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory [0327/163619.302962:WARNING:dns_config_service_linux.cc(427)] Failed to read DnsConfig. DevTools listening on ws://0.0.0.0:9222/devtools/browser/f33fa04d-d495-4388-ae52-cb2193d57718 [0327/163619.307594:ERROR:gpu_init.cc(446)] Passthrough is not supported, GL is disabled, ANGLE is [0327/163619.320535:WARNING:bluez_dbus_manager.cc(248)] Floss manager not present, cannot set Floss enable/disable. This is `docker logs hoarder-redis-1`: 1:C 27 Mar 2024 16:36:19.119 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. 1:C 27 Mar 2024 16:36:19.119 * oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 1:C 27 Mar 2024 16:36:19.119 * Redis version=7.2.4, bits=64, commit=00000000, modified=0, pid=1, just started 1:C 27 Mar 2024 16:36:19.119 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf 1:M 27 Mar 2024 16:36:19.120 * monotonic clock: POSIX clock_gettime 1:M 27 Mar 2024 16:36:19.121 * Running mode=standalone, port=6379. 1:M 27 Mar 2024 16:36:19.121 * Server initialized 1:M 27 Mar 2024 16:36:19.122 * Loading RDB produced by version 7.2.4 1:M 27 Mar 2024 16:36:19.122 * RDB age 621 seconds 1:M 27 Mar 2024 16:36:19.122 * RDB memory usage when created 1.41 Mb 1:M 27 Mar 2024 16:36:19.122 * Done loading RDB, keys loaded: 3, keys expired: 3. 1:M 27 Mar 2024 16:36:19.122 * DB loaded from disk: 0.000 seconds 1:M 27 Mar 2024 16:36:19.122 * Ready to accept connections tcp This is `docker logs hoarder-workers-1`: Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-8.15.5.tgz. > @hoarder/workers@0.1.0 start:prod /app/apps/workers > tsx index.ts 2024-03-27T16:36:23.133Z info: Connecting to existing browser instance: http://chrome:9222 (node:34) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. (Use `node --trace-deprecation ...` to show where the warning was created) 2024-03-27T16:36:23.149Z info: Successfully resolved IP address, new address: http://172.20.0.5:9222/ 2024-03-27T16:36:25.004Z info: Starting crawler worker ... 2024-03-27T16:36:25.006Z info: Starting inference worker ... 2024-03-27T16:36:25.006Z info: Starting search indexing worker ... This is `docker logs hoarder-meilisearch-1`: 888b d888 d8b 888 d8b 888 8888b d8888 Y8P 888 Y8P 888 88888b.d88888 888 888 888Y88888P888 .d88b. 888 888 888 .d8888b .d88b. 8888b. 888d888 .d8888b 88888b. 888 Y888P 888 d8P Y8b 888 888 888 88K d8P Y8b "88b 888P" d88P" 888 "88b 888 Y8P 888 88888888 888 888 888 "Y8888b. 88888888 .d888888 888 888 888 888 888 " 888 Y8b. 888 888 888 X88 Y8b. 888 888 888 Y88b. 888 888 888 888 "Y8888 888 888 888 88888P' "Y8888 "Y888888 888 "Y8888P 888 888 Config file path: "none" Database path: "./data.ms" Server listening on: "http://0.0.0.0:7700" Environment: "development" Commit SHA: "1a083d54fc2840ac59530e5395397211cace35be" Commit date: "2024-02-13T14:47:34+00:00" Package version: "1.6.2" Thank you for using Meilisearch! We collect anonymized analytics to improve our product and your experience. To learn more, including how to turn off analytics, visit our dedicated documentation page: https://www.meilisearch.com/docs/learn/what_is_meilisearch/telemetry Anonymous telemetry: "Enabled" Instance UID: "06b4882f-f286-484c-913b-b25e280918b4" A master key has been set. Requests to Meilisearch won't be authorized unless you provide an authentication key. Check out Meilisearch Cloud! https://www.meilisearch.com/cloud?utm_campaign=oss&utm_source=engine&utm_medium=cli Documentation: https://www.meilisearch.com/docs Source code: https://github.com/meilisearch/meilisearch Discord: https://discord.meilisearch.com [2024-03-27T16:36:19Z INFO actix_server::builder] starting 4 workers [2024-03-27T16:36:19Z INFO actix_server::server] Actix runtime found; starting in Actix runtime This is `docker logs hoarder-web-1`: ▲ Next.js 14.1.4 - Local: http://localhost:3000 - Network: http://0.0.0.0:3000 ✓ Ready in 353ms ``` Need to actually do some work as opposed to f-around with this computer all day again!
Author
Owner

@MohamedBassem commented on GitHub (Mar 27, 2024):

hmm, glad you fixed your docker compose problems :D

As for it not working, what kind of errors are you getting? The docker logs look fine to me.

Did you try visiting http://localhost:3000? What do you see there?

<!-- gh-comment-id:2023307557 --> @MohamedBassem commented on GitHub (Mar 27, 2024): hmm, glad you fixed your `docker compose` problems :D As for it not working, what kind of errors are you getting? The docker logs look fine to me. Did you try visiting `http://localhost:3000`? What do you see there?
Author
Owner

@gatesry commented on GitHub (Mar 28, 2024):

which I don't understand why docker-compose is still around on a system that's < a month old

You should be installing Docker through their documentation: https://docs.docker.com/engine/install/#supported-platforms

guess I never got the memo since i really don't want to understand or even use docker. in no way has it made things simpler for me vs. just running things on systemd...

You can always look at the source files here (including Dockerfile), and install manually, but as this is receiving frequent updates, your manual install will be out of date soon.

<!-- gh-comment-id:2025258213 --> @gatesry commented on GitHub (Mar 28, 2024): > which I don't understand why docker-compose is still around on a system that's < a month old You should be installing Docker through their documentation: https://docs.docker.com/engine/install/#supported-platforms > guess I never got the memo since i really don't want to understand or even use docker. in no way has it made things simpler for me vs. just running things on systemd... You can always look at the source files here (including Dockerfile), and install manually, but as this is receiving frequent updates, your manual install will be out of date soon.
Author
Owner

@iconoclasthero commented on GitHub (Mar 30, 2024):

which I don't understand why docker-compose is still around on a system that's < a month old

You should be installing Docker through their documentation: https://docs.docker.com/engine/install/#supported-platforms

guess I never got the memo since i really don't want to understand or even use docker. in no way has it made things simpler for me vs. just running things on systemd...

You can always look at the source files here (including Dockerfile), and install manually, but as this is receiving frequent updates, your manual install will be out of date soon.

I don't think I did anything other than follow the instructions on the docker website. Given how convoluted they are, it's not impossible that I did something in the wrong order or picked a wrong path in their choose-your-own-adventure of installing the docker framework so I can actually get onto what I want to do.

<!-- gh-comment-id:2028179262 --> @iconoclasthero commented on GitHub (Mar 30, 2024): > > which I don't understand why docker-compose is still around on a system that's < a month old > > You should be installing Docker through their documentation: https://docs.docker.com/engine/install/#supported-platforms > > > guess I never got the memo since i really don't want to understand or even use docker. in no way has it made things simpler for me vs. just running things on systemd... > > You can always look at the source files here (including Dockerfile), and install manually, but as this is receiving frequent updates, your manual install will be out of date soon. I don't think I did anything other than follow the instructions on the docker website. Given how convoluted they are, it's not impossible that I did something in the wrong order or picked a wrong path in their choose-your-own-adventure of installing the docker framework so I can actually get onto what I want to do.
Author
Owner

@iconoclasthero commented on GitHub (Mar 30, 2024):

I saw the update in the documentation. not knowing a lot about docker that clarifies things. It's difficult to know everything and it helps when you say that "you need to change some stuff here" but then don't say what needs to stay fixed...then the user doesn't know what to do next and is left like, wtf?

<!-- gh-comment-id:2028183189 --> @iconoclasthero commented on GitHub (Mar 30, 2024): I saw the update in the documentation. not knowing a lot about docker that clarifies things. It's difficult to know everything and it helps when you say that "you need to change some stuff here" but then don't say what needs to stay fixed...then the user doesn't know what to do next and is left like, wtf?
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/karakeep#12
No description provided.