You can deploy Vely applications in different ways.
Using containers (such as with docker
) is an easy, reliable and portable way of deploying a Vely application. See containerize_application
This method is also applicable for deployment to Internet of Things
(IOT) systems, such as for example Fedora IOT
or with Raspberry PI
Operating Systems often used for devices. For IOT, Vely can be deployed both on servers and devices.
Installing from source
You can also deploy a Vely application by installing it from source; see application_setup
. After installation, you may delete the source code and remove generated C code:
Installing from binary
The binary for your application can be copied to another computer with the same Operating System and with Vely installed, provided the Operating System has compatible libraries; in practice this means the same major Operating System version and the same or higher minor version. The same is true for Vely version; you must have the same major Vely version and the same or higher minor version.
You must install Vely first on the target machine and then create the application, for instance:
sudo vf -i -u $(whoami) <app name>
Next you must copy the binaries for your application from source to target, to the same location. Assuming application name is <app name>, the binaries are:
#Fast CGI binary:
#command line and CGI binary:
For an application that does not use any database(s) and does not need any additional files, this is enough to deploy the application to a target machine.
If you use database(s), you must install such database(s) and migrate any needed data, and copy the database_config_file
s, meaning the following directory:
If you use SQLite, you can just copy the database file as it is portable; generally such file would be in the application's home directory. Since the application's home directory is:
you would copy any custom files and directories you have created and that your application may need. Note that all files and directories copied must be owned by the application owner, i.e. the user used in application creation command above (see vf
Multi-user and multi-application environment
Each application owner (i.e. the user used in application creation with -u flag, see vf
) can have any number of applications. At the same time, different application owners can create any number of applications of their own; the application directory for each application is owned by its respective owner with 700 permissions, meaning different users cannot access application files of other owners (see how_vely_works
). Similarly, application servers (i.e. FastCGI servers) run under the application owner permissions, and can only be managed by its owner.