Dokploy

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.

Habitica logo

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 → AdvancedBase64 import and paste the content below:

ewogICJjb21wb3NlIjogInZlcnNpb246IFwiMy44XCJcblxuc2VydmljZXM6XG4gIHNlcnZlcjpcbiAgICBpbWFnZTogZG9ja2VyLmlvL2F3aW50ZXJzdGVpbi9oYWJpdGljYS1zZXJ2ZXI6bGF0ZXN0XG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBkZXBlbmRzX29uOlxuICAgICAgLSBtb25nb1xuICAgIGVudmlyb25tZW50OlxuICAgICAgLSBOT0RFX0RCX1VSST1tb25nb2RiOi8vbW9uZ28vaGFiaXRpY2FcblxuICBjbGllbnQ6XG4gICAgaW1hZ2U6IGRvY2tlci5pby9hd2ludGVyc3RlaW4vaGFiaXRpY2EtY2xpZW50OmxhdGVzdFxuICAgIHJlc3RhcnQ6IHVubGVzcy1zdG9wcGVkXG4gICAgZGVwZW5kc19vbjpcbiAgICAgIC0gc2VydmVyXG4gICAgcG9ydHM6XG4gICAgICAtIFwiODBcIlxuXG4gIG1vbmdvOlxuICAgIGltYWdlOiBkb2NrZXIuaW8vbW9uZ286bGF0ZXN0XG4gICAgcmVzdGFydDogdW5sZXNzLXN0b3BwZWRcbiAgICBjb21tYW5kOiBbXCItLXJlcGxTZXRcIiwgXCJyc1wiLCBcIi0tYmluZF9pcF9hbGxcIiwgXCItLXBvcnRcIiwgXCIyNzAxN1wiXVxuICAgIGhlYWx0aGNoZWNrOlxuICAgICAgdGVzdDogZWNobyBcInRyeSB7IHJzLnN0YXR1cygpIH0gY2F0Y2ggKGVycikgeyBycy5pbml0aWF0ZSgpIH1cIiB8IG1vbmdvc2ggLS1wb3J0IDI3MDE3IC0tcXVpZXRcbiAgICAgIGludGVydmFsOiAxMHNcbiAgICAgIHRpbWVvdXQ6IDMwc1xuICAgICAgcmV0cmllczogMzBcbiAgICB2b2x1bWVzOlxuICAgICAgLSBoYWJpdGljYS1tb25nby1kYXRhOi9kYXRhL2RiXG5cbnZvbHVtZXM6XG4gIGhhYml0aWNhLW1vbmdvLWRhdGE6IHt9XG4iLAogICJjb25maWciOiAiW3ZhcmlhYmxlc11cbm1haW5fZG9tYWluID0gXCIke2RvbWFpbn1cIlxubWFpbF9wYXNzd29yZCA9IFwiJHtwYXNzd29yZDozMn1cIlxuXG5bY29uZmlnXVxuW1tjb25maWcuZG9tYWluc11dXG5zZXJ2aWNlTmFtZSA9IFwiY2xpZW50XCJcbnBvcnQgPSA4MFxuaG9zdCA9IFwiaGFiaXRpY2EuJHttYWluX2RvbWFpbn1cIlxuXG5bY29uZmlnLmVudl1cblxuQkFTRV9VUkw9XCJodHRwczovL2hhYml0aWNhLiR7bWFpbl9kb21haW59XCJcbklOVklURV9PTkxZPVwiZmFsc2VcIlxuRU1BSUxfU0VSVkVSX1VSTD1cIm1haWwuZXhhbXBsZS5jb21cIlxuRU1BSUxfU0VSVkVSX1BPUlQ9XCI1ODdcIlxuRU1BSUxfU0VSVkVSX0FVVEhfVVNFUj1cIm1haWxfdXNlclwiXG5FTUFJTF9TRVJWRVJfQVVUSF9QQVNTV09SRD1cIiR7bWFpbF9wYXNzd29yZH1cIlxuXG5bW2NvbmZpZy5tb3VudHNdXVxuc2VydmljZU5hbWUgPSBcIm1vbmdvXCJcbnR5cGUgPSBcInZvbHVtZVwiXG5zb3VyY2UgPSBcImhhYml0aWNhLW1vbmdvLWRhdGFcIlxudGFyZ2V0ID0gXCIvZGF0YS9kYlwiIgp9

Tags

productivity, gamification, habits, self-hosted


Version: latest

On this page