DeployHub can be accessed from our SaaS hosted environment or installed locally onto a Windows, Linux Server, or Cloud image. If you would like to install DeployHub as a hosted solution in a ‘private’ cloud, please contact our support for specific instructions.

SaaS Configuration with Reverse Proxy

DeployHub is a hosted continuous deployment solution requiring minimal installation. DeployHub is hosted in the Google Cloud. To provide a secure experience, a Reverse Proxy is installed on the inside of your organization’s firewall. The ‘one-way’ reverse proxy contacts the hosted side of DeployHub to receive requests and must be installed before you begin deploying.



DeployHub Architecture

Sign-up for SaaS

Sign-up to use the SaaS version of DeployHub and start deploying immediately.  When you sign-up, you will be asked for basic information, such as company and project names to provide you with a unique ‘Domain’ and ‘Project’ identifier. If someone else from your organization signs up to DeployHub, they will need to create another Project Name.  


Once you sign-up, you’ll see a high level ‘Domain’ named after your Project name, for example “Teller.” In addition, you will be assigned a Pipeline called “MyPipeline” that includes ‘Dev”, “Test” and “Production” stages.  At this point you will be ready to begin defining Credentials, Repositories, and the Components of your Application.  


You can change the name of your Application or reconfigure your Pipeline in any way needed to reflect your own life cycle process.


To begin deploying you will need to install a Reverse Proxy inside your firewall. The Reverse Proxy contacts DeployHub running in our SaaS environment to receive deployment requests.

Reverse Proxy Installation

The Reverse Proxy runs as docker container.  In order to install it you need to have docker up and running.

Docker Installation


Docker for Windows​

Requires Microsoft Windows 10 Professional or Enterprise 64-bit


Docker for CentOS

Requires CentOS 64-bit 7.1 and higher on x86_64


Docker for RedHat

Require RHEL 64-bit 7.1 and higher on x86_64, s390x, or ppc64le (not ppc64)


Docker for Ubuntu

Requires 64-bit version of one of these Ubuntu versions:

Bionic 18.04 (LTS)

Artful 17.10

Xenial 16.04 (LTS)

Trusty 14.04 (LTS)


Docker for OS/X

Requires macOS El Capitan 10.11 and newer macOS releases are supported. We recommend upgrading to the latest version of macOS.

Test your Docker Install

See the Docker Install Test instructions

Installing Your Docker Reverse Proxy

The DeployHub Reverse Proxy Docker Image is found on the DockerHub Container Catalog and the RedHat Certified Container Catalog.  Follow the steps below to install the Reverse Proxy into your Docker installation.

Pull DockerHub

$docker login registry.hub.docker.com

$docker pull registry.hub.docker.com/deployhub/deployhub-rproxy

Pull RedHat

$ docker login registry.connect.redhat.com

$ docker pull registry.connect.redhat.com/deployhub/deployhub-rproxy

Volume to access Jenkins build results

Linux and OS/X

$ docker volume create --name jenkinsfs --opt type=nfs --opt device=:/var/jenkins/jobs --opt o=addr=192.168.0.101

Windows

$ docker volume create --name jenkinsfs

--driver local --opt type=cifs

--opt device=//server/path/to/share

--opt=username=myuser,password=mypw,

file_mode=0777,dir_mode=0777


Set your CLIENTID as environment variable

Linux and OS/X

$ export CLIENTID="Client ID sent in welcome email"

Windows

$ set CLIENTID="Client ID sent in welcome email"


Start the container

Linux and OS/X

$ docker run -d --hostname `hostname` -e CLIENTID=$CLIENTID -v jenkinsfs:/jenkins -v ~/.ssh:/keys:Z ${IMAGE}

Windows

$ docker run -d --hostname %COMPUTERNAME•% -e CLIENTID=%CLIENTID% -v jenkinsfs:/jenkins -v ~/.ssh:/keys:Z ${IMAGE}

Volumes Used

jenkinsnfs:/jenkins is the Jenkins build results

~/.ssh:/keys:Z users ssh keys made visible to the container for credentials


Notes

  • ${CLIENTID} = client id assigned to your user id from the deployhub.com website or welcome email
  • ${IMAGE} = image id from the docker pull
  • NFS is share Jenkins Jobs directory
  • DeployHub  will see the Jenkins File System Repository as /jenkins
  • DeployHub  will see the ssh keys as /keys



Using Multiple Deployment Engines

Multiple deployment engines can distribute large deployments and can be added as you expand the number of endpoints used.  Multiple deployment engines can distribute simultaneous deployments to multiple locations, making it faster. Additional deployment engines can only be installed on Linux.  


Download the deployment engine RPM from the DeployHub website. Install the RPM on the Linux server that will be an additional deployment engine host.  Update the Domain entries to point to the new deployment engine for that Domain.

More Help

DeployHub Tutorials

Support Questions and Issues

Demos, Tips and Tricks