Upgrading¶
This guide explains how to upgrade your La Suite Meet instance to a new version.
Before upgrading¶
-
Read the changelog: Check CHANGELOG.md and UPGRADE.md for breaking changes between your current version and the target version.
-
Back up your database:
-
Note your current version:
Standard upgrade procedure¶
1. Pull new images¶
This downloads the latest images without stopping your running containers.
2. Check for migration requirements¶
Review UPGRADE.md for the specific version you're upgrading to. Some releases require manual steps before restarting.
3. Restart with new images¶
Docker Compose will recreate containers that have a new image and leave unchanged containers running.
4. Run database migrations¶
Always run migrations after upgrading — even if the changelog doesn't mention schema changes, it is safe to run.
5. Collect static files¶
6. Verify the upgrade¶
# Check all containers are healthy
docker compose ps
# Check application logs for errors
docker compose logs --tail=50 app
# Test the application in your browser
Upgrading with zero downtime¶
For minimal disruption:
- Pull new images while old containers run:
docker compose pull - Schedule a maintenance window during low-traffic hours
- Run the upgrade during the window:
docker compose up -d - Migration typically takes seconds to a few minutes
Rolling back¶
If something goes wrong:
Roll back the application¶
# Stop current containers
docker compose down
# Pull and start a specific version
docker compose pull --no-parallel
# Edit compose.yml to pin image tags to the previous version
docker compose up -d
# Roll back the database (if migrations ran)
docker compose exec app python manage.py migrate <app_name> <previous_migration>
Restore from backup¶
# Stop the app
docker compose stop app celery
# Restore the database
docker compose exec -T postgresql psql -U meet meet < meet_backup_YYYYMMDD.sql
# Start the app
docker compose start app celery
Version pinning¶
By default, docker compose pull fetches :latest. To pin to a specific version, edit your compose.yml:
This is recommended for production to avoid unexpected upgrades.
Automatic upgrades (Watchtower)¶
You can use Watchtower to automatically pull and restart containers when new images are published:
watchtower:
image: containrrr/watchtower
volumes:
- /var/run/docker.sock:/var/run/docker.sock
command: --interval 86400 # check every 24 hours
Note: Automatic upgrades can introduce breaking changes. Review changelogs before enabling this in production.
Keeping LiveKit up to date¶
LiveKit server and Egress should be upgraded separately. Check the LiveKit changelog for compatibility notes with your Meet version.
Getting help with upgrades¶
If you encounter issues during an upgrade:
- Check GitHub Issues for known upgrade problems
- Ask in the Matrix community
- Open a new issue with your current version, target version, and error logs