No description
Docker Compose config, env template, gitignore, and deployment README for running Tududi on a Fedora LXC behind NPMPlus. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .env.example | ||
| .gitignore | ||
| docker-compose.yml | ||
| README.md | ||
Tududi - Todo App
Self-hosted Tududi instance running on Docker, deployed to a Fedora LXC on Proxmox.
Prerequisites
- Fedora LXC container (1 core, 512MB RAM, 4GB disk)
- Docker and Docker Compose installed
Install Docker on Fedora
dnf -y install dnf-plugins-core
dnf-3 config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
dnf -y install docker-ce docker-ce-cli containerd.io
systemctl enable --now docker
Deploy
# Clone the repo
git clone ssh://git@code.git.tsyn.dev:234/tsynodinos/todo.git /opt/tududi
cd /opt/tududi
# Create .env from template
cp .env.example .env
# Generate session secret and set your password
sed -i "s/generate-with-openssl-rand-hex-64/$(openssl rand -hex 64)/" .env
vi .env # set TUDUDI_USER_PASSWORD
# Start the container
docker compose up -d
The app will be available on port 3002.
Reverse Proxy (NPMPlus)
Add a proxy host in NPMPlus:
| Setting | Value |
|---|---|
| Domain | todo.home.bind.gr |
| Forward to | <LXC-IP>:3002 |
| SSL | Enable (Let's Encrypt or wildcard) |
| WebSocket | Enable |
DNS
Add a local DNS rewrite in AdGuard Home if no wildcard exists for *.home.bind.gr:
todo.home.bind.gr-> NPMPlus IP
Update
cd /opt/tududi
docker compose pull
docker compose up -d
Data
Persistent data is stored in:
./db/- SQLite database./uploads/- User uploads
These directories are excluded from git via .gitignore.