101 lines
2.7 KiB
Markdown
101 lines
2.7 KiB
Markdown
# Flook Stacks
|
|
|
|
Docker Compose stacks for Flook (192.168.1.75) managed via Portainer.
|
|
|
|
## Stacks
|
|
|
|
| Stack | Services | Port(s) | Description |
|
|
|-------|----------|---------|-------------|
|
|
| portainer | portainer | 9000 | Stack management |
|
|
| proxy | npm | 1880, 18443, 81 | Nginx Proxy Manager (CRITICAL) |
|
|
| documents | paperless, paperless-db, paperless-redis, paperless-tika, paperless-gotenberg, onlyoffice | 8777, 8089, 4430 | Document management |
|
|
| productivity | gitlab, vaultwarden, memos, mortis, freshrss | 8929, 4743, 5230, 5231, 8054 | Personal tools |
|
|
| backup | borgmatic | - | Borg backup to chook |
|
|
| seafile | seafile, seadoc, mysql, redis, notification, md-server, seasearch | 8098, 8888, 8083, 8084, 4080 | File sync (migrated from VM) |
|
|
| outline | outline, postgres, redis | 3000 | Wiki (migrated from VM) |
|
|
|
|
## Deployment Order
|
|
|
|
1. `portainer` - Deploy first, manually
|
|
2. `productivity` - GitLab, Vaultwarden, Memos, FreshRSS, Mortis
|
|
3. `documents` - Paperless, OnlyOffice
|
|
4. `backup` - Borgmatic
|
|
5. `proxy` - CRITICAL - deploy carefully, brief downtime expected
|
|
6. `seafile` - After migrating data from VM
|
|
7. `outline` - After migrating data from VM
|
|
|
|
## Migration Notes
|
|
|
|
### Seafile Migration (from VM 192.168.1.112)
|
|
|
|
1. **Stop Seafile on VM:**
|
|
```bash
|
|
ssh rishi@192.168.1.112
|
|
cd /opt/seafile && docker compose down
|
|
```
|
|
|
|
2. **Create directories on Flook:**
|
|
```bash
|
|
mkdir -p /mnt/user/appdata/seafile/{data,db-data,seadoc-data,seasearch-data}
|
|
```
|
|
|
|
3. **Copy data:**
|
|
```bash
|
|
rsync -avP rishi@192.168.1.112:~/seafile/data/ /mnt/user/appdata/seafile/data/
|
|
rsync -avP rishi@192.168.1.112:~/seafile/db-data/ /mnt/user/appdata/seafile/db-data/
|
|
```
|
|
|
|
4. **Copy seahub_settings.py:**
|
|
```bash
|
|
cp /mnt/user/data/flook-stacks/stacks/seafile/seahub_settings.py /mnt/user/appdata/seafile/
|
|
```
|
|
|
|
5. **Deploy stack via Portainer**
|
|
|
|
### Outline Migration (from VM 192.168.1.112)
|
|
|
|
1. **Create directories on Flook:**
|
|
```bash
|
|
mkdir -p /mnt/user/appdata/outline/{postgres-data,redis}
|
|
```
|
|
|
|
2. **Export Postgres from VM:**
|
|
```bash
|
|
ssh rishi@192.168.1.112
|
|
docker exec outline-postgres-1 pg_dump -U rishi outline > ~/outline_backup.sql
|
|
```
|
|
|
|
3. **Copy backup to Flook:**
|
|
```bash
|
|
scp rishi@192.168.1.112:~/outline_backup.sql /mnt/user/appdata/outline/
|
|
```
|
|
|
|
4. **Deploy stack via Portainer** (this creates empty DB)
|
|
|
|
5. **Stop outline container temporarily:**
|
|
```bash
|
|
docker stop outline
|
|
```
|
|
|
|
6. **Import data:**
|
|
```bash
|
|
docker exec -i outline-postgres psql -U rishi outline < /mnt/user/appdata/outline/outline_backup.sql
|
|
```
|
|
|
|
7. **Start outline:**
|
|
```bash
|
|
docker start outline
|
|
```
|
|
|
|
8. **Stop VM services after verification:**
|
|
```bash
|
|
ssh rishi@192.168.1.112
|
|
cd ~/outline && docker compose down
|
|
```
|
|
|
|
## Repository
|
|
|
|
```
|
|
https://git.rishighan.com/root/flook-stacks.git
|
|
```
|