Habitica
Habitica is a free habit and productivity app that treats your real life like a game. With in-game rewards and punishments to motivate you and a strong social network to inspire you, Habitica can help you achieve your goals to become healthy and hard-working.
Configuration
version: "3.8"
services:
server:
image: docker.io/awinterstein/habitica-server:latest
restart: unless-stopped
depends_on:
- mongo
environment:
- NODE_DB_URI=mongodb://mongo/habitica
client:
image: docker.io/awinterstein/habitica-client:latest
restart: unless-stopped
depends_on:
- server
ports:
- "80"
mongo:
image: docker.io/mongo:latest
restart: unless-stopped
command: ["--replSet", "rs", "--bind_ip_all", "--port", "27017"]
healthcheck:
test: echo "try { rs.status() } catch (err) { rs.initiate() }" | mongosh --port 27017 --quiet
interval: 10s
timeout: 30s
retries: 30
volumes:
- habitica-mongo-data:/data/db
volumes:
habitica-mongo-data: {}[variables]
main_domain = "${domain}"
mail_password = "${password:32}"
[config]
[[config.domains]]
serviceName = "client"
port = 80
host = "habitica.${main_domain}"
[config.env]
BASE_URL="https://habitica.${main_domain}"
INVITE_ONLY="false"
EMAIL_SERVER_URL="mail.example.com"
EMAIL_SERVER_PORT="587"
EMAIL_SERVER_AUTH_USER="mail_user"
EMAIL_SERVER_AUTH_PASSWORD="${mail_password}"
[[config.mounts]]
serviceName = "mongo"
type = "volume"
source = "habitica-mongo-data"
target = "/data/db"Base64
To import this template in Dokploy: create a Compose service → Advanced → Base64 import and paste the content below:
ewogICJjb21wb3NlIjogInZlcnNpb246IFwiMy44XCJcblxuc2VydmljZXM6XG4gIHNlcnZlcjpcbiAgICBpbWFnZTogZG9ja2VyLmlvL2F3aW50ZXJzdGVpbi9oYWJpdGljYS1zZXJ2ZXI6bGF0ZXN0XG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBkZXBlbmRzX29uOlxuICAgICAgLSBtb25nb1xuICAgIGVudmlyb25tZW50OlxuICAgICAgLSBOT0RFX0RCX1VSST1tb25nb2RiOi8vbW9uZ28vaGFiaXRpY2FcblxuICBjbGllbnQ6XG4gICAgaW1hZ2U6IGRvY2tlci5pby9hd2ludGVyc3RlaW4vaGFiaXRpY2EtY2xpZW50OmxhdGVzdFxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZGVwZW5kc19vbjpcbiAgICAgIC0gc2VydmVyXG4gICAgcG9ydHM6XG4gICAgICAtIFwiODBcIlxuXG4gIG1vbmdvOlxuICAgIGltYWdlOiBkb2NrZXIuaW8vbW9uZ286bGF0ZXN0XG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBjb21tYW5kOiBbXCItLXJlcGxTZXRcIiwgXCJyc1wiLCBcIi0tYmluZF9pcF9hbGxcIiwgXCItLXBvcnRcIiwgXCIyNzAxN1wiXVxuICAgIGhlYWx0aGNoZWNrOlxuICAgICAgdGVzdDogZWNobyBcInRyeSB7IHJzLnN0YXR1cygpIH0gY2F0Y2ggKGVycikgeyBycy5pbml0aWF0ZSgpIH1cIiB8IG1vbmdvc2ggLS1wb3J0IDI3MDE3IC0tcXVpZXRcbiAgICAgIGludGVydmFsOiAxMHNcbiAgICAgIHRpbWVvdXQ6IDMwc1xuICAgICAgcmV0cmllczogMzBcbiAgICB2b2x1bWVzOlxuICAgICAgLSBoYWJpdGljYS1tb25nby1kYXRhOi9kYXRhL2RiXG5cbnZvbHVtZXM6XG4gIGhhYml0aWNhLW1vbmdvLWRhdGE6IHt9XG4iLAogICJjb25maWciOiAiW3ZhcmlhYmxlc11cbm1haW5fZG9tYWluID0gXCIke2RvbWFpbn1cIlxubWFpbF9wYXNzd29yZCA9IFwiJHtwYXNzd29yZDozMn1cIlxuXG5bY29uZmlnXVxuW1tjb25maWcuZG9tYWluc11dXG5zZXJ2aWNlTmFtZSA9IFwiY2xpZW50XCJcbnBvcnQgPSA4MFxuaG9zdCA9IFwiaGFiaXRpY2EuJHttYWluX2RvbWFpbn1cIlxuXG5bY29uZmlnLmVudl1cblxuQkFTRV9VUkw9XCJodHRwczovL2hhYml0aWNhLiR7bWFpbl9kb21haW59XCJcbklOVklURV9PTkxZPVwiZmFsc2VcIlxuRU1BSUxfU0VSVkVSX1VSTD1cIm1haWwuZXhhbXBsZS5jb21cIlxuRU1BSUxfU0VSVkVSX1BPUlQ9XCI1ODdcIlxuRU1BSUxfU0VSVkVSX0FVVEhfVVNFUj1cIm1haWxfdXNlclwiXG5FTUFJTF9TRVJWRVJfQVVUSF9QQVNTV09SRD1cIiR7bWFpbF9wYXNzd29yZH1cIlxuXG5bW2NvbmZpZy5tb3VudHNdXVxuc2VydmljZU5hbWUgPSBcIm1vbmdvXCJcbnR5cGUgPSBcInZvbHVtZVwiXG5zb3VyY2UgPSBcImhhYml0aWNhLW1vbmdvLWRhdGFcIlxudGFyZ2V0ID0gXCIvZGF0YS9kYlwiIgp9Links
Tags
productivity, gamification, habits, self-hosted
Version: latest