Upgrading

Note: Always backup your database(s) before updating Graphileon!
When upgrading Graphileon, there are 3 important parts: the application files, the 'persistent' files and the application database.
  • The application files are the files that make Graphileon work the way it does and should be replaced with each new version of Graphileon.
  • The persistent files are configuration files, uploaded files, and anything you may have changed during your use of Graphileon.
  • The application database is the database with Graphileon nodes. Most changes will be backwards compatible, but there may be breaking changes.

Depending on how you installed Graphileon, there are different ways to upgrade Graphileon:

Server Edition

For the Server Edition, the new files come in an archive. To upgrade Graphileon, simply extract the archive besides the previous version and copy the persistent directory from the old version into the new one. The entire persistent directory can be replaced by the previous one. To start the new Graphileon version, run the graphileon executable in the newly extracted Graphileon root directory.

Server Edition Docker

For the Server Edition Docker image, the new files come as a Docker image. Depending on the docker run command used, the persistent files can be migrated in 2 ways:

Bound 'persistent' volume

If the 'persistent' volume was bound (e.g. docker run -dt -p 3000:3000 -v /path/to/my/dir/:/persistent graphileon), simply docker run the new Graphileon Docker image with the same volume binding. The new Graphileon version will be able to use your current persistent files. It is generally recommended to bind the persistent volume, because it allows easy migration to next versions of Graphileon.

No bound 'persistent' volume

If no volume was bound (e.g. docker run graphileon -p 3000:3000), the persistent directory will be under Docker's volume management, but can still be found on your local file system by the name docker-persistent. Docker's volumes can be found in the following locations on different operating systems:

  • Linux/MacOSX: /var/lib/docker/volumes
  • Windows: C:\ProgramData\docker\volumes

These volumes should not be written to, but can be copied to a destination outside Docker's management. From there, the volume can be bound to the next Graphileon version with run command, e.g.:

docker run -dt -p 3000:3000 -v /path/to/my/dir/:/persistent graphileon

It is generally recommended to bind the persistent volume, because it allows easy migration to next versions of Graphileon.

Personal Edition

For the Personal Edition, the new Graphileon version will come as an executable file. The persistent data is stored in your OS's app data directory and will be automatically used by the new Graphileon version.

App data directories per OS:

  • Windows: C:\Users\<username>\AppData\Roaming\graphileon\
  • Mac: ~/Library/Application Support/graphileon/
  • Linux: ~/.config/graphileon/

Breaking Changes

Updates may come with breaking changes. Before you update, always make a backup of your database(s) and check the Release Notes for breaking changes for all versions between your current version and the new version.