Overview
To request assistance with upgrading or to obtain the links to self-upgrade, please click here to fill out the Upgrade Request Form.
In this guide, we'll run you through installing qTest Manager 9.3 with its additional applications on a single CentOS/ Ubuntu machine using Docker.
Before You Begin
- Follow this article Getting Started with qTest OnPremise Fall 2018 to get an overview of the qTest OnPremise deployment.
What is included in the docker-deployment-4.6 package?
The qTest's docker-deployment-4.6 includes following applications. Among those, qTest Manager is the required application, simply specify more application you want to deploy (eligible application is up to your license.)
- qTest Manager 9.3 includes qtest and its prerequisite applications: postgres, qtestlb
- qTest Session 4.2.1 includes session and its prerequisite applications: postgres, qtestlb
- qTest Parameters 2.1.7 includes parameters and its prerequisite applications: mongodb, parameterslb
- qTest Insights 1.19.1 includes insights and its prerequisite applications: postgres, insightslb, insightsetl
- qTest Launch 1.3.2 includes launch and its prerequisite applications: postgres, launchlb
- qTest Pulse 9.1.0 includes pulse and its prerequisite applications: mongodb, pulselb
- qTest Scenario 2.0.4 includes pulse and its prerequisite applications: scenariolb
To install qTest Manager and its additional applications, access the machine where Docker has been installed. Use the 'root' or a user which has been added to the docker user group, then the steps below.
Download Docker-Deployment-4.6 Package
$ wget <ENTER DOWNLOAD LINK HERE>
Extract the Package
$ tar -zxf docker-deployment-4.6.tar.gz
Configure before Deploying
$ cd docker-deployment-4.6
Configure to Deploy HTTP
Specify URL and http port of each application you want to deploy (qTest Manager is required)
Application name | Append ./configure command with URL and http port of your apps |
---|---|
qTest Manager | --qtest-url "[Manager URL]" --qtest-http "[qtest http port]" |
qTest Session | --sessions-url "[Session URL]" --sessions-http "[session http port]" |
qTest Insights | --insights-url "[Insights URL]" --insights-http "[insights http port]" |
qTest Parameters | --parameter-url "[Parameter URL]" --parameter-http "[parameters http port]" |
qTest Launch | --launch-url "[Launch URL]" --launch-http "<launch http port>" |
qTest Pulse | --pulse-url "[Pulse URL]" --pulse-http "<pulse http port>” |
qTest Scenario | --scenario-url "[Scenario URL]" --scenario-http "[scenario http port]" |
NOTE: if you are using server's IP address in the URL, you must use the public IP address so all the applications are able to connect to each other
Scenario 1: Deploy qTest Manager with qTest Sessions, qTest Insights, qTest Parameters, qTest Launch and qTest Pulse. This is applicable for Elite package
$ ./configure --apps "postgres qtest qtestlb sessions sessionslb insights insightslb insightsetl mongo parameters parameterslb launch launchlb pulse pulselb scenario scenariolb" --qtest-url "http://:" --qtest-http "" --sessions-url "http://:" --sessions-http "" --insights-url "http://:" --insights-http "" --parameters-url "http://:" --parameters-http "" --launch-url "http://:" --launch-http "" --pulse-url "" --pulse-http "" --scenario-url "" --scenario-http ""
Scenario 2: qTest Manager with qTest Sessions. This is applicable for Premium package
$ ./configure --qtest-url "http://:" --qtest-http "" --sessions-url "http://:" --sessions-http ""
Scenario 3: Deploy only qTest Manager
$ ./configure --qtest-url "http://:" --qtest-http ""
The example below shows the URLs of qTest Manager, Sessions, Insights, Parameters and Launch generated in default.in that uses a public IP address after executing the configured command, in bold.
# Generated by config configure ... # Global configs ssl_key='' ssl_cert='' ssl_ca='' qtest_url='http://34.234.18.38:8080' sessions_url='http://34.234.18.38:8081' sessions_token='QToy' # scenario_url='http://scenario:8082' insights_url='http://34.234.18.38:8000' parameters_url='http://34.234.18.38:1080' # pulse_url='http://pulse:3000' launch_url='http://34.234.18.38:80'
...
Configure to Deploy HTTPS
- Specify path to ssl-key, ssl-cert, ssl-ca
- Specify URL and https port of each application you want to deploy (qTest Manager is required)
Application name | Append ./configure command with URL and https port of your apps |
---|---|
qTest Manager | --qtest-url "[Manager URL]" --qtest-https "[manager https port]" |
qTest Sessions | --sessions-url "[Session URL]" --sessions-https "[session https port]" |
qTest Insights | --insights-url "[Insights URL]" --insights-https "[insights https port]" |
qTest Parameters | --parameter-url "[Parameter URL]" --parameter-https "[parameter https port]" |
qTest Launch | --launch-url "[Launch URL]" --launch-https "<launch https port>" |
qTest Pulse | --pulse-url "[Pulse URL]" --pulse-https "<pulse https port>" |
qTest Scenario | --scenario-url "[Scenario URL]" --scenario-https "[scenario https port]" |
NOTE: if you are using server's IP address in the URL, you must use the public IP address so all the applications are able to connect to each other.
Scenario 1: Deploy qTest Manager with qTest Sessions, qTest Insights, qTest Parameters, qTest Launch, and qTest Pulse. This is applicable for Elite package
$ ./configure --apps "postgres qtest qtestlb sessions sessionslb insights insightslb insightsetl mongo parameters parameterslb launch launchlb scenario scenariolb" --ssl-key "" --ssl-cert "" --ssl-ca "" --qtest-url "https://:" --qtest-https "" --sessions-url "https://:" --sessions-https "" --insights-url "https://:" --insights-https "" --parameters-url "https://:" --parameters-https "" --launch-url "https://:" --launch-https "" --launch-url "" --launch-https "" --pulse-url "" --pulse-https "" --scenario-url "" --scenario-https ""
Scenario 2: qTest Manager with qTest Sessions. This is applicable for Premium package
$ ./configure --ssl-key "" --ssl-cert "" --ssl-ca "" --qtest-url "https://:" --qtest-https "" --sessions-url "https://:" --sessions-https ""
Scenario 3: Deploy only qTest Manager with default https port 443
$ ./configure --ssl-key "" --ssl-cert "" --ssl-ca "" --qtest-url "https://:" --qtest-https ""
Below example shows the URLs of qTest Manager, Sessions, Insights, Parameters and Launch generated in default.in that uses public IP address after executing configure command, in bold.
# Generated by config configure ... # Global configs ssl_key='' ssl_cert='' ssl_ca='' qtest_url='https://34.234.18.38:443' sessions_url='https://34.234.18.38:8443' sessions_token='QToy' # scenario_url='http://scenario:8082' insights_url='https://34.234.18.38:9443' parameters_url='https://34.234.18.38:10443' # pulse_url='http://pulse:3000' launch_url='https://34.234.18.38:3443'
...
Start the Deployment Process
- Execute this command to initially set up and start the application.
$ ./startup
The script will download the application images and qTest components to the Docker. It may take couple of hours depending on your network connection
- Open your web browser, access qTest Manager using the URL specified above.
- Validate if it has started successfully.
- Execute these commands to set up qTest Manager as a Linux Daemon.
$ ./shutdown $ ./install
- Start the service. You may need to wait for few minutes for qTest Manager to be available.
$ systemctl start qtest
Set up qTest Applications
Please follow this guide: Configure qTest Applications to complete the remaining steps to activate your account.