Install - Server on Linux VM using Podman with Sudoless Access
Installation Steps
Take the following steps to install the vFunction Podman Server on a Linux VM with Sudoless Access:
As the Root User Before the Installation
- SSH to the Linux VM where the vFunction Server will be installed
- Confirm that podman and runc are installed. For example,
yum list installed podman runc
- Create the Rootless User if needed and set the Home Directory to the location where the 100gb of Storage exists. For example,
useradd -m vfunction -d /PATH/TO/100GB/STORAGE
- If a new user was created, create a password for the Rootless User as well. For example,
passwd vfunction
- Confirm that the Rootless User has Sub User IDs that can be used by Podman:
grep 'vfunction' /etc/subuid
. If no results are returned, following these steps to add Sub User IDs - Confirm that the Rootless User has Sub Group IDs that can be used by Podman:
grep 'vfunction' /etc/subgid
. If no results are returned, following these steps to add Sub Group IDs - Give the Rootless User ownership of the Home Directory where the 100gb of Storage exists. For example:
chown -R vfunction:user /PATH/TO/100GB/STORAGE
- Allow the Rootless User to continue running the vFunction Server Containers even after the terminal session has ended. For example,
loginctl enable-linger vfunction
As the Rootless User Performing the Installation
- SSH to the Linux VM where the vFunction Server will be installed
- Run
cd ~
to move to the Rootless User’s Home Directory - Create directories for the Podman Containers and the vFunction installation:
mkdir -p /PATH/TO/100GB/STORAGE/storage tmp measurements db
- Run
systemctl start podman
. If the Rootless User cannot restart Podman without Administrative Credentials, follow these steps here - Run
podman ps
to confirm that a list of the Containers can be generated without any warning or errors. - Download the latest vFunction Server Podman Installation TGZ and move this package to the current Home Directory
- Unpack the Installation Package. Replace VERSION with the actual value.
tar -xvzf vfunction-server-podman-installation.vVERSION.tgz
- Optional if using HTTPS: Move the chained SSL Certificate Bundle as server.crt and the SSL Key as server.key into the vfunction/etc/sysconfig/vfunction/nginx/certs/
- Open the server-installation.yaml
vi vfunction/etc/sysconfig/vfunction/installation/server-installation.yaml
- Set the required and optional Configurable Settings. For example:
- Set
server.host
= http://IP_OF_SERVER:1024 - Set
server.org_name
= NAME_OF_ORGANIZATION - Set
server.admin.email
= vfunction@NAME_OF_ORGANIZATION.com - Set
server.admin.name
= Admin - Set
server.admin.password
= DESIRED_PASSWORD - Uncomment and set
storage.database
= /PATH/TO/100gb/STORAGE/db - Uncomment and set
storage.measurements
= /PATH/TO/100gb/STORAGE/measurements - Uncomment
networking.disable_ipv6
= true
- Optional: Set the Temporary Container Image Storage location is this was modified as a Prerequisite because there was not 15gb available in /var/tmp:
export TMPDIR=/path/to/desired/location
- Run the installation script
bash vfunction/opt/vfunction/server-installation/install.sh