Skip to main content

Update Diva manually

Manual migration/update is always a useful option for any version of diva-alpha-net. For early testnet versions, automatic scripts are not backward compatible, and a manual upgrade is required.

1. Get the new version of diva-alpha-net​

Stop the current docker-compose file navigating to the original diva folder:

cd ~/diva-alpha-net
docker compose down

If any file other than docker-compose.yml was used (as for example docker-compose-with-clients-metrics.yml), it can be specified as follows:

docker compose -f docker-compose-with-clients-metrics.yml down 

Create a backup of the whole directory where the diva-alpha-net was running by moving it to another folder:

mv ~/diva-alpha-net ~/diva-alpha-net-bak

And then, clone a fresh diva-aplha-net to the parent folder:

git clone https://github.com/shamirlabs/diva-alpha-net ~/diva-alpha-net

Initialize a new .env from the provided .env.example template file:

cp ~/diva-alpha-net/.env.example ~/diva-alpha-net/.env 

2. Migrate the data​

Copy the .diva folder from the ~/diva-alpha-net-bak folder to the new folder ~/diva-alpha-net:

cp -r ~/diva-alpha-net-bak/.diva ~/diva-alpha-net/.diva

Look for the value of the DIVA_VAULT_PASSWORD and paste it in the .env file in the new folder.

Depending on the version used, the DIVA_VAULT_PASSWORD can be at:

  • As an environment variable in any of the following docker compose files:
    • docker-compose.yml
    • docker-compose-with-clients.yml
    • docker-compose-with-clients-metrics.yml
  • In latest versions, it can be found in the .env file.

3. Done​

You must stop and delete all the containers before starting the services again.

docker compose down
docker compose up -d

Diva logs can be checked using:

docker logs diva -f