Project Alpha 0.5.0 Database Reset

Version 0.5.0 deliberately has no in-place upgrade path from 0.4.x or earlier pre-release development schemas. Existing database contents are discarded. Project Alpha never removes a production volume automatically.

For local throwaway development stacks only, docker compose -f docker-compose.yml -f docker-compose.override.yml down -v is acceptable when you intentionally want to reset every local named volume and rebuild from the 0.5.0 baseline. Do not use down -v for pilot, staging, production, or any host that contains uploads, configuration, backups, or data you need to preserve.

Pilot Server

  1. Record the current Compose project name and confirm which volume or TrueNAS dataset contains only MySQL data. Do not remove uploads, configuration, backups, or the persisted encryption key.
  2. Stop the stack:

    docker compose down
    
  3. Inspect the candidate volume before deletion:

    docker volume ls
    docker volume inspect <confirmed-project-alpha-db-volume>
    
  4. Remove only the confirmed pa_db_data volume:

    docker volume rm <confirmed-project-alpha-db-volume>
    

    For a TrueNAS host-path installation, stop the app and delete/recreate only the configured database dataset through the TrueNAS storage UI.

  5. Pull/build 0.5.0 and deploy:

    docker compose pull
    docker compose up -d
    docker compose ps -a
    docker compose logs migrate
    
  6. Confirm migrate exited successfully, web and cron are healthy/running, and the logs contain no password hash.
  7. Open PA and complete first-time setup to create the initial administrator; recreate the client and application settings.
  8. Restart the stack and verify login, documents, cron, uploads, configuration, and backups still work.
  9. Verify the administrator can sign out and back in after a redeploy.

Second Server

Reset the second server only after the pilot passes every check. Use the identical image tags and repeat the same volume inspection, database-only removal, deployment, first-time setup, login, and restart checks.

docker compose down -v is intentionally not used for server rollouts because it also removes non-database named volumes.