28 lines
1.4 KiB
Markdown
28 lines
1.4 KiB
Markdown
# Task Log - Fix Docker Healthcheck and Port Conflicts
|
|
|
|
## Actions
|
|
|
|
- **Docker Configuration**:
|
|
- Updated `starter/docker-compose.yml` postgres healthcheck to explicitly specify the database name (`-d ${POSTGRES_DATABASE:-lightrag_multitenant}`). This fixes the `FATAL: database "lightrag" does not exist` errors in the logs.
|
|
|
|
- **Test Script**:
|
|
- Updated `starter/test_multi_tenant.sh` to check for and kill any process holding port 9621 before starting containers. This resolves the `Bind for 0.0.0.0:9621 failed` error.
|
|
|
|
## Decisions
|
|
|
|
- **Aggressive Port Cleanup**: Added `lsof ... | xargs kill -9` to the test script. This is necessary for a reliable "reset and run" experience in a dev environment where zombie processes might linger.
|
|
- **Healthcheck Precision**: The default `pg_isready` behavior (using username as dbname) was incorrect for our setup where `POSTGRES_USER=lightrag` but `POSTGRES_DB=lightrag_multitenant`. Explicitly setting the database fixes the false negative healthchecks.
|
|
|
|
## Next Steps
|
|
|
|
1. **Run the Test Script**:
|
|
|
|
```bash
|
|
cd starter
|
|
./test_multi_tenant.sh
|
|
```
|
|
|
|
2. **Verify Fixes**:
|
|
- Watch the logs (via `docker-compose logs -f` if needed) to ensure no more "database does not exist" errors appear.
|
|
- Confirm the API container starts successfully without port conflict errors.
|
|
- Proceed with WebUI verification at `http://localhost:3000`.
|