In order to create templates in Parallels (now Odin) Cloud Server 6 (now called Virtuozzo), download and install the vztt-build YUM package, create the required package description meta files and then run the vzmktmpl command with the appropriate command line parameters. The tool will build an RPM file which you then install with the vzpkg tool before pushing it to a container.
Log into your server and Install the required tools using:
yum install vztt-build -y
To create an Application Template (not to be confused with an OS template), log into the hardware node, cd to /root and create a metafile for the application, in this example a “salt-minion” application template wil be created to install the client for the configuration manager SaltStack.
First the metafile...... cd /root vi salt-minion.metafile Then the pre-install script (in this example)..... cd /root vi salt-minion.pre-install-script Finally we wil creat the post install file....
cd /root vi salt-minion.post-install-script
In the meta file (salt-minion.metafile), create the following entries and change as needed for the specific application, this example used the EPEL repository to retrieve the required package dependencies:
%appname salt-minion %version 1 %release 2 %osname centos %osver 7 %osarch x86_64 %packages salt-minion %repositories http://download.fedoraproject.org/pub/epel/7/x86_64 %description Salt Minion for Centos 7
In this example we need have a pre-installation script (salt-minion.pre-install-script) which creates the EPEL repo in the container before trying to deploy the application, the file will be called salt-minion.pre-installation-script and contains 1 line:
yum -y install epel-release :wq! vi salt-minion.post-install-script sed -i 's/^#master: salt/master: salt.myhost.com/' /etc/salt/minion systemctl enable salt-minion systemctl start salt-minion :wq!
Building the Application template
Once the required files are ready, use the build tool as follows (note this is one line):
vzmktmpl --pre-install salt-minion.pre-install.script
This will create an RPM file crafted from the parameters in the metafile.
Install into local repo
vzpkg install template salt-minion-centos-7-x86_64-ez-1.2.noarch.rpm
If you are making changes to an already installed package, you should delete the old package using:
rpm -e salt-minion-centos-7-x86_64-ez-1.2
Deploying your package
To now deploy your new package to a container (in this example CTID is 115):
vzpkg install 115 salt-minion
You can also specify post-installation option and a range of others as stated in the PDF guide mentioned below. I only needed to get the repo installed in the container and then this specific package and its dependencies.
You can also install this into PBA-S and it can be deployed by the Parallels Business Automation software during container creation.