All apps · 0 apps
Nametag
Docker app from matto's Repository
Overview
Nametag is a personal CRM for the people in your life. Keep notes, birthdays and important dates, see how everyone is connected in an interactive network graph, organize people into groups, keep a journal, and get reminders to stay in touch. Two-way CardDAV sync works with Google Contacts, iCloud, Outlook and Nextcloud.
Before the first start:
- Install a PostgreSQL container (for example the official postgres:16 image) and create a database and user for Nametag.
- Generate the two secrets in the Unraid terminal with: openssl rand -base64 32
- Run: mkdir -p /mnt/user/appdata/nametag/photos && chown -R 1001:1001 /mnt/user/appdata/nametag (the container runs as UID 1001).
Reminders and CardDAV sync need scheduled calls. The Read Me link has ready-to-paste User Scripts entries.
Readme
View on GitHubUnraid templates for Nametag
Community Applications templates for Nametag, an open-source personal CRM. The app itself lives at mattogodoy/nametag.
Installing Nametag on Unraid
The template installs the Nametag container only. It needs a PostgreSQL database alongside it.
PostgreSQL. Install a PostgreSQL container from Community Applications (the official
postgresimage, version 14 or newer). Create a database and user for Nametag, and note the server's IP, port, user and password.Photo folder. The container runs as UID 1001. In the Unraid terminal, run:
mkdir -p /mnt/user/appdata/nametag/photos chown -R 1001:1001 /mnt/user/appdata/nametagInstall. In Apps, search for Nametag and click Install. Generate two secrets with
openssl rand -base64 32and paste them into Auth secret and Cron secret. Set App URL to the address you open Nametag at, fill in the database fields, and click Apply.Background jobs. Reminders, CardDAV sync, cleanup and geocoding run when something calls Nametag's cron endpoints. With the User Scripts plugin, create one script per job:
#!/bin/bash NAMETAG_URL="http://192.168.1.10:3000" CRON_SECRET="your-cron-secret" curl -fsS -H "Authorization: Bearer $CRON_SECRET" "$NAMETAG_URL/api/cron/send-reminders"Job Endpoint Suggested schedule Reminders send-reminders0 8 * * *Cleanup purge-deleted0 3 * * *CardDAV sync carddav-sync0 2,10,18 * * *Geocoding geocode*/5 * * * *
Redis and SMTP settings are under Show more settings. Leave them empty if
you don't use them. Email needs EMAIL_DOMAIN, SMTP_HOST, SMTP_PORT,
SMTP_USER and SMTP_PASS; see the
email docs. For anything else,
click Add another Path, Port, Variable, Label or Device and use a name from
the configuration docs.
Full self-hosting docs: https://docs.nametag.one/self-hosting/
Support
Open an issue at https://github.com/mattogodoy/nametag/issues.
Media gallery
1 / 4Requirements
Categories
Related apps
Explore more like this
Explore allDetails
ghcr.io/mattogodoy/nametag:latestRuntime arguments
- Web UI
http://[IP]:[PORT:3000]/- Network
bridge- Shell
sh- Privileged
- false
Template configuration
Port for the web interface.
- Target
- 3000
- Default
- 3000
- Value
- 3000
Where profile photos are stored. Must be owned by UID 1001.
- Target
- /app/data/photos
- Default
- /mnt/user/appdata/nametag/photos
- Value
- /mnt/user/appdata/nametag/photos
The address you open Nametag at, for example http://192.168.1.10:3000 or https://nametag.example.com. Used for sign-in and links in emails.
- Target
- NEXTAUTH_URL
- Default
- http://YOUR-SERVER-IP:3000
- Value
- http://YOUR-SERVER-IP:3000
At least 32 characters. Generate with: openssl rand -base64 32
- Target
- NEXTAUTH_SECRET
At least 16 characters. Protects the scheduled-job endpoints. Generate with: openssl rand -base64 32
- Target
- CRON_SECRET
IP address or container name of your PostgreSQL server.
- Target
- DB_HOST
PostgreSQL port.
- Target
- DB_PORT
- Default
- 5432
- Value
- 5432
Name of the PostgreSQL database. It must already exist.
- Target
- DB_NAME
- Default
- nametag
- Value
- nametag
PostgreSQL user.
- Target
- DB_USER
- Default
- nametag
- Value
- nametag
PostgreSQL password.
- Target
- DB_PASSWORD
Set to true after creating your account to stop others from signing up.
- Target
- DISABLE_REGISTRATION
- Default
- false
- Value
- false
Optional. For example redis://192.168.1.10:6379. Without it, rate limiting uses memory.
- Target
- REDIS_URL
Optional. Only if your Redis needs a password.
- Target
- REDIS_PASSWORD
Domain emails are sent from, for example example.com. Needed to send email.
- Target
- EMAIL_DOMAIN
Optional. SMTP server for reminder and password-reset emails.
- Target
- SMTP_HOST
587 for STARTTLS or 465 for SSL.
- Target
- SMTP_PORT
true for port 465, false for 587. Default false.
- Target
- SMTP_SECURE
Require STARTTLS. Default true.
- Target
- SMTP_REQUIRE_TLS
SMTP username, often your email address.
- Target
- SMTP_USER
SMTP password or app password.
- Target
- SMTP_PASS
Optional. Override the from address if your server rejects custom ones.
- Target
- SMTP_FROM