Studio Server Client
Studio Server Client is a free native Linux CLI tool (terminal application) that enables individuals and companies that are using the amazing DaVinci Resolve software suite for video editing and colour grading to very easily setup and manage their own central dedicated project server running on Linux without having to use WINE or any other Windows Application emulation tool.
This tool has been developed as BlackMagic Design do not provide a first-party Linux version of their DaVinci Resolve Project Server software.
This tool simplifies and automates the creation and management of one or more DaVinci Resolve Project databases on a Linux server. This software is also designed to set up, automate and manage project database backups with ease too.
Even if you aren't collaborating with other team members on the same project(s) or you work by yourself, using a server to host your video, VFX and colour grading projects has many additional benefits such as providing a great way for users to switch and work from different locations and/or computers, in the same office or over the internet. Using a central server that is configured to automatically back-up your databases also means that you to never having to worry about forgetting to take manual local back-ups as this software automates this process in the background for you.
This software can be installed on a headless server (no monitor attached or graphical desktop environment) - you can of-course use a desktop environment too if you would like but this tool is designed to be run from the terminal (the way that most Linux Server administrators prefer to run things!)
We now have a Dockerized version of this software (which includes a web-interface and can easily be deployed on many NAS devices too), if you would like more information please visit our Studio Server page.
Installation
All you need to get going is to have the PostgreSQL database software installed on your Linux Server (we recommend running Ubuntu Linux 22.04 LTS) and configured to allow remote database connections.
As soon as you have the PostgreSQL database engine installed, you can simply run the following command at the terminal to install this software:
bash -c "$(wget https://wirebear.co.uk/software/studio-server-client/install -O
-)"
If you are new to Linux or would like to follow a full, step-by-step tutorial, including how to install and use this software (as well as how to install and set up the PostgreSQL database engine), then please check out this video tutorial on YouTube.
Features
- Easy setup and configuration of one or more project databases
- Automatically creates database users and roles
- One-click set-up of nightly scheduled backups per database
- Automatic purge (clean-up) of old databases backups - your server will never run out of space!
- Ability to set custom automated backup schedules
- Ability to instantly (manually) backup and restore one or more project databases
- Easily reset database passwords
- Cloud-friendly database backups - You can set up your server to upload your backups to cloud storage for extra protection!
Like the software?
If by using this tool, I have made your life a little easier, and you would like to show your appreciation and help fund the future development of this tool, please feel free to send me a small donation on PayPal.
Need help?
If you need help installing or running this software (including the installation of PostgreSQL), check out this YouTube video where we walk you through the process of installing it and using the software on a Ubuntu Linux Server!
If you still need help and have followed the video tutorial feel free to contact us.
Command Index
All attempts have been made to make each command as simple and easy to use as possible,
see
the below list of
commands, their actions and examples of their use; you can also see a cut down version
of
this list from your
terminal by running the studio --help
command!
Action | Syntax / Notes / Example |
---|---|
Create a project database (with a random password) |
Syntax
studio --create {database-name}Notes This will create a project database and user account (the username will be the same as the database name), by not specifying a password, the tool will automatically generate a random password. Examplestudio --create wirebear |
Create a project database (with specific password) |
Syntax
studio --create {database-name} {password}Notes This will create a project database and user account (the username will be the same as the database name) with the specified password. Examplestudio --create wirebear MyStr0ngPassw0rd |
Reset a database password |
Syntax
studio --reset-password {database-name} {new-password}Notes This will reset the database (user account) password be aware however that you will need to change this in DaVinci Resolve the next time you try to connect to this specific project database it up as it will fail to connect as DaVinci Resolve will still be configured to use the old password! Examplestudio --reset-password wirebear MyNEWpassword |
List all existing project databases |
Syntax
studio --listNotes This will show a list of all existing project databases that you have set up and that are running on your server. Examplestudio --list |
Delete a project database |
Syntax
studio --delete {database-name}Notes Deletes the project database and user in addition to any schedule backup tasks (this does however leave any existing backups in place of which will then automatically be deleted once they become too old and exceed the number of days that you have configured to purge old backups) Examplestudio --delete wirebear |
Manually backup a project database |
Syntax
studio --backup {database-name}Notes Will instantly run a backup of your project database and add it to your collection of backups (so that you can restore at a later date if you would like). Examplestudio --backup wirebear |
View list of available backups for a specific database |
Syntax
studio --backup-list {database-name}Notes This will show a list of all backups including the date and time they were taken for a specific project database, these backup archives are ready for you to restore from if required. Examplestudio --backup-list wirebear |
Purge backups for a database older than X days |
Syntax
studio --backup-clean {database-name} {keep-days}Notes If you don't want to wait for the automatic backup purge (by default backups older than 30 days will be deleted automatically), or you want to free up some space quickly, you can run this command. In the example below, all backups that are older than 5 days will be deleted instantly. Examplestudio --backup-clean 5 |
Restore a database |
Syntax
studio --restore {database-name} {archive-name}Notes This command will instantly restore a project database using the specified
backup
file, in the
example below, this will restore the database "wirebear" using the backup
archive name
"wirebear_20220923_221000"; if you don't know the archive name, you can use
the
studio --restore wirebear wirebear_20220923_221000 |
Enable automatic nightly backups for a database |
Syntax
studio --schedule {database-name}Notes This will set up an automatic (by default this will be nightly at 00:00)
backup
task that will run
and backup your project database. You can use the studio --schedule wirebear |
Enable automatic backups using a custom schedule |
Syntax
studio --schedule {database-name} "{cron-expression}"Notes This will set up a custom backup task that will run and backup your project
database using the CRON expression you set. In the example
below, our server will
automatically back-up our "wirebear" database at 5 minutes past the hour.
You
can use the studio --schedule wirebear "5 * * * *" |
Show help and syntax examples |
Syntax
studio --helpNotes This will output the list of available commands and what each one does. Examplestudio --help |
Show installed version |
Syntax
studio --versionNotes This will output the currently installed version of this software. Examplestudio --version |
Check for software updates |
Syntax
studio --check-updatesNotes You can run this command to check for any new software updates for this tool. Examplestudio --check-updates |
Have some suggestions?
We have tried to make this tool as simple and light-weight as possible by automating a lot of "things" behind the scenes. If however you feel that you have a great idea that you would like to see implemented into this software please contact us and let us know!