OpsWise Controller Docker Install
|
This is a Legacy doc! It describes building a docker container image from scratch. |
1. Prep
1.1. MySQL Prep
-
Update DB Server info
-
In the
docker-compose.ymlfile update entries for:-
MARIADB_ROOT_PASSWORD
-
-
1.2. Install Prep
-
Download the latest controller file and place it in the
uac-installation-filesdirectory.Example file nameuniversal-controller-7.4.0.0.zip -
Download the latest Debian Linux agent file and place it in the
uac-installation-filesdirectory.Example file namesb-7.4.0.0-linux-3-x86_64-deb.tar.Z -
Update variables in
uac/uac-scripts/function-library.bashto reflect the names of the following:-
controller file name
-
war file name
-
The war file is contained in the controller zip file. Do the following to get the name
zipinfo universal-controller-7.x.x.x.zip (1)1 this should be the name of the controller’s zip file -
Example
Examplezipinfo universal-controller-7.4.0.0.zip Archive: universal-controller-7.4.0.0.zip Zip file size: 174453202 bytes, number of entries: 5 -rw-r--r-- 3.0 unx 180345269 bx defN 23-Apr-04 17:06 universal-controller-7.4.0.0-build.139.war (1) -rw-r--r-- 3.0 unx 11372 bx defN 23-Apr-04 17:06 InstallController.class -rw-r--r-- 3.0 unx 1034 bx defN 23-Apr-04 17:06 UcProperties.class -rw-r--r-- 3.0 unx 49 tx stor 23-Apr-04 17:06 install-controller.bat -rw-r--r-- 3.0 unx 49 tx stor 23-Apr-04 17:06 install-controller.sh 5 files, 180357773 bytes uncompressed, 174452288 bytes compressed: 3.3%
1 this the name of the war file
-
-
agent files
The variable values should match the names of the recently downloaded files.
-
2. Build Image & Start Containers
-
Change dir
cd pod-uac-server -
Build the docker image and start the containers via the
podman-composecommand.podman-compose up -d --buildIt will take a few minutes to build the docker image…
3. Bootstrap
3.1. Bootstrap UAC Controller
-
Connect to the
UACcontainerpodman exec -it UAC-Server bash -
Start the UAC Controller bootstrap process:
-
Move to /tmp/uac-scripts
cd /tmp/uac-scripts -
Exec
./1-install-uac-controller.bash
-
4. Launch GUI
-
After the initial install, restart the container.
podman restart UAC-Server -
Browse to:
http://<ip address>:8085/uc/ -
Log in with user=
ops.adminwith no passwordYou will need to change the password immediately.
5. Setup
5.1. Preliminary
-
Create an OMS Server where address=
uac-server -
Configure
LDAP -
Rename Agents
-
Rename the initial Linux agent to
AGNT0001 -
Rename the
P-Ubuntu-Norco*Linux agent toP-Ubuntu-NORCO -
Rename the
P-Ubuntu-NAS*Linux agent toP-Ubuntu-NAS -
Rename the
Norco*Windows agent tonorco
-
-
Set system property for
Resolvable Credentials Permittedto True. -
Create a user (not a credential) that can access the Web API
-
Create a user with the following properties:
-
user Id =
web-api-user -
First Name =
Web Api User -
Web Browser Access =
No -
Command Line Access =
No -
Web Service Access =
Yes
-
-
Grant this user the
ops_adminrole.
-
5.2. Import Universal Templates
-
Import
Jobs as Code\\norco\Stuff\Appz\_Schedulers\Stonebranch\Integrations\JaC\unv_tmplt_jobs_as_code-1.0.0+414.zip -
Import
LAZ-Win-UAG-Upgrade\\norco\Stuff\Appz\_Schedulers\Stonebranch\Integrations\LAZ\unv_tmplt_laz_win_uag_upgrade.zip -
Import
SSH\\norco\Stuff\Appz\_Schedulers\Stonebranch\Integrations\UAC\Remote SSH Server\unv-templ-ut-remote-ssh-server-json-1.0.1.zip -
Import
XS-RoboCopy\\norco\Stuff\Appz\_Schedulers\Stonebranch\Integrations\XS\unv_tmplt_xs_robocopy.zip -
Import
XS-RSync\\norco\Stuff\Appz\_Schedulers\Stonebranch\Integrations\XS\unv_tmplt_xs_rsync.zip
5.3. Restore Definitions for Tasks, etc
-
Restore Credentials
-
Goto Credentials
-
Upload all credential files
Source folder\\norco\Stuff\Appz\_Schedulers\Stonebranch\Bootstrap\Credentials\
-
-
Fix Credentials
-
For the
mattosdcred, fix the password. -
For the
linux-mattosdcred, fix the password. -
For the
linux-rootcred, fix the password. -
For the
gitlabcred, re-input theTokenvalue.If unknown, goto GitLab, open the Repo-UACproject, and generate a new access token -
For the
cred: Web-Api-Userupdate the password from the user account created earlier.
-
-
Restore All Tasks
-
Restore from the single All Tasks file.
This file will need to be imported twice!
The 2nd import will link sub-workflow with workflows.
-
-
Alter
Jobs as Codetask.-
For the
JaC: Import from GitLabtask, update theUniversal Controller URL fieldExamplehttp://192.168.1.10:8085/uc/
-
-
Restore Triggers
-
Restore
Source folder\\norco\Stuff\Appz\_Schedulers\Stonebranch\Bootstrap\Triggers -
Enable Triggers
-
6. Misc
6.1. Log files
6.2. DB
6.2.1. Dump the DB
-
Run the dump-db.bash script
This will create a dump file in MariaDB-data/backupssudo dump-db.bash
6.2.2. Restore from DB
| Confirm you have a DB restore file to restore from before proceeding! |
-
Stop the pod-uac-server pod
podman-compose down -
Delete the MariaDB-data/ folder contents
sudo find ./MariaDB-data/ -mindepth 1 \ ! -path './MariaDB-data/restores' \ ! -path './MariaDB-data/restores/*' \ ! -path './MariaDB-data/backups' \ ! -path './MariaDB-data/backups/*' \ -exec rm -rf {} + -
Set ownership on the ./MariaDB-data folder
sudo chwon -R 525286:525286 ./MariaDB-data -
Start the pod-uac-server pod
podman-compose up -d -
Run the restore-db.bash script with the name of the db restore file
examplesudo ./restore-db.bash ../opswiseDB_2025-08-16-09_04_54.sql -
Now continue by following the the Bootstrap section of this doc.
6.2.3. Connect to DB
-
Connect to the MariaDB server using the
mysqlclientConnect as root directly from the UAC-MariaDB containerpodman exec -it UAC-MariaDB mysql -u root -pyou’l need to provide the MariaDB root password that’s set in the compose.ymlfile.Connect as opswise_db_admin directly from the UAC-Server containerpodman exec -it UAC-Server mysql -h uac-db -u opswise_db_admin -pyou’l need to provide the opswise_db_admin password that’s set in the db\1-setup.sqlfile.
7. Uninstall Containers
|
This will destroy all data! Do this when the license expires. |
-
Run the
destroy uac script:sudo ./detroy-uac.bash
8. Upgrade the Controller
-
Download the latest controller file and place it in the
uac-installation-filesdirectory.Example file nameuniversal-controller-7.4.1.7.zip -
Connect to the
UACcontainersudo docker exec -it UAC-Server bash -
Extract the
warFile-
Go to the installation folder
cd /tmp/uac-installation-files -
Unzip the insall file
unzip universal-controller-7.4.1.7.zip -
Rename the
warfilemv universal-controller-7.4.1.7-build.36.war uc.war
-
-
Shutdown the Controller
the $CATALINA_HOME var should already be set but if not, then set with:
export $CATALINA_HOME=/usr/local/tomcatcd $CATALINA_HOME/bin./shutdown -
Delete deployment folder and
warfilecd $CATALINA_HOME/webappsrm -r uc uc.war -
Copy the new
warfilemv /tmp/uac-installation-files/uc.war . -
Restart the UAC Controller
cd $CATALINA_HOME/bin./startup.sh -
Restart the OMS
/etc/init.d/ubrokerd start