How to migrate from the Demo Docker Deployment to Product deployment

Modified on Wed, 1 Oct at 12:23 PM

Problem:

The Docker-based demo deployment of Allure TestOps is intended only for evaluation purposes. However, many teams start with this setup and later face the challenge of moving to the production-ready architecture, while keeping their existing data intact.


What need to do:


Step 1: Check PostgreSQL and pg_dump versions

Inside the demo database container, check the installed versions of PostgreSQL and pg_dump:

docker exec testops-db pg_dump --version


This information is needed so that when you deploy the database according to our recommendations described here:


you will use the pg_restore utility of the same version.


Step 2: Create a database dump

Run the following command to create a dump of your TestOps database:

docker exec testops-db pg_dump \
  --file=testops_backup.dump \
  --host=localhost \
  --port=5432 \
  --username=testops \
  --dbname=testops \
  --compress=9 \
  --format=c \
  --schema=public \
  --verbose \
  --blobs \
  --no-owner \
  --no-privileges \
  --no-comments \
  -W

During execution you’ll be asked for the database password.
It can be found in your .env file in the parameter: DEMO_INSTANCE_TESTOPS_DB_PASS


Step 3: Copy the dump file out of the container

Once the dump is ready, copy it from the container to your host machine

docker cp testops-db:/testops_backup.dump ./testops_backup.dump

The dump file will appear in the same directory as your deployment files.


Step 4: Restore the dump

Please follow the instructions here:
  • MinIO: Deploy it outside of the demo container (or switch to an external S3-compatible storage). Follow the migration guide:
    Migrating data to MinIO

  • RabbitMQ and Redis: Deploy these services outside of Docker as well, then update your deployment configuration to point TestOps to the correct endpoints.




Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article