Installing IBM UrbanCode Velocity with Docker Compose

Install IBM™ UrbanCode Velocity into the Docker Compose container orchestrator.

See the Software Product Compatibility Reports (SPCR) for the latest system requirements documentation for IBM UrbanCode Velocity

The tools required by all installation scenarios include the following items:
  • Docker installed on the host system.
    Note: If you use Docker for Windows, make sure Docker is using Linux-type containers. IBM UrbanCode Velocity does not support Windows-type containers.
  • Internet connection. During installation, files and container images are retrieved from remote locations. If you are unable to access the internet during installation, you can download the files beforehand and perform an offline installation. IBM UrbanCode Velocity supports the following browsers: Chrome, Firefox, and Edge.
    Note: These steps are only required if users are using the online installer to push images to an offline docker registry:

    Use pull command to pull the container images from public repository.

    $ docker pull public repo

    Use tag command to tag the public and private repository.

    $ docker tag public repo private repo

    Use push command to push container images to private repository.

    $ docker push private repo

    All the container images are retrieved from public to private repository.

Note: The installation files used for offline installation are not the same as those used for internet-connected installation. Ensure that you download the right file for your installation environment.
Note: If you are installing the product on Red Hat Enterprise Linux®, you need RHEL 7 or later.
Note: On Linux, the Docker daemon runs as the root user. If you do not want to use sudo with the docker command, create a Linux group called docker. Ensure that the user who installs the product is a member of that group. See the Docker documentation for more information about managing Docker as the non-root user.
Get a key. The key enables you to complete installation. To obtain your key, see instructions in quick start guide. Store the key in a readily-available location; you use it during installation.
Note: Secure values stored in a JSON file are automatically added to the home directory of the user installing the product. The directory is hidden and should not be modified or removed by the user. Because the values are located in the user's home directory, future upgrades must be performed by the user of the original installation. The encryption key encrypts the secure values in the JSON file. If a user uses the default encryption key when installing the product, future upgrades should proceed normally. If a non-default encryption key is provided for the initial installation, the user must also provide that encryption key for future upgrades. The values stored in the hidden directory are accessed by the installer on any future upgrades, and changes to the secure values will prevent upgraded instances from accessing existing data.

Prerequisite

Before starting the installation, pull the MongoDB images from the MongoDB sources. Complete the following steps to pull the MongoDB images.
  1. Run the docker pull mongo:4.0 && docker save -o mongo.tar mongo:4.0 command to pull image for MongoDB version 4.0.
    Note: For more information about compatible versions of MongoDB, see system requirements page.
  2. Copy the mongo.tar to offline installation system and run the docker load -i mongo.tar command to load the docker images.

Installation

The installation instructions describe installing the product on all supported operating systems. The downloaded executable file steps you through the installation process and sets your installation parameters.

  1. Download the installation file for your environment.
    Note: IBM UrbanCode Velocity does not perform malware scanning on the installed files. It is recommended that end users implement malware scanning as appropriate for their environment before installing and running the IBM UrbanCode Velocity in their environment.
    Note: For macOS and Linux installations, set the appropriate permissions before running the file: sudo chmod +x.
    Access the URL for internet-connected installations, and then select the file appropriate for you environment:
    • Linux: velocity-ibm-install-latest-linux
    • Windows: velocity-ibm-install-latest-win.exe
    • Mac OS: velocity-ibm-install-latest-macos

    You can download previous versions from the same URL.

    You can use a shell command to download the file. For example, if you are installing the product on Linux, you can download the file with a command like this one:
    wget https://www.urbancode.com/uc-downloads/Velocity/latest/velocity-ibm-install-latest-linux
    If you are performing an offline installation, access the same URL, and then download the offline installation file appropriate for you environment:
    • Linux: velocity-ibm-offline-install-latest-linux
    • Windows: velocity-ibm-offline-install-latest-win.exe
    • Mac OS: velocity-ibm-offline-install-latest-macos
  2. Run the downloaded executable file.
    For example, on Linux use the following shell command:
    ./velocity-ibm-install-latest-linux
  3. Complete installation by responding to the prompts described in the following steps.
    When the script starts, you are prompted to accept the license. You can explicitly accept the license without viewing it by appending the following parameter to the command:
    ./<velocity-installation-file> --license=accept
    1. At the Please enter your IBM UrbanCode Velocity access key prompt, enter your SE version access key.
      If you previously installed an SE version, the already-configured key is the default value.
      Note: Make sure that you enter the key for the right version.
    2. At the Do you accept the license? [Y,n] To continue the installation process, you must accept the license prompt, enter Y to continue the installation process.
    3. At the Enter your encryption key or leave blank to use the default. Key must be at least 8 characters prompt, enter your encryption key or leave blank to use the default encryption key.
      Note: The encryption key must be at least 8 characters. Save the encryption key to use for further upgrades.
    4. At the Choose the platform prompt, select Docker Compose (Evaluation only).
    5. At the Enter the location where the IBM UrbanCode Velocity files will be installed prompt, enter the location where you want to install the product files.
      Files are copied to the specified directory in a subdirectory named product_version_number.
    6. At the Enter path to the folder containing your "server.crt" and "server.key" files or leave blank to use default prompt, enter the location where you saved the server.crt and server.key certificate files or leave blank to use the default folder.
      Note: The self-signed SSL certificate is generated with the duration of two years. You can locate the certificate in conf/ssl of the installation directory.
    7. At the Enter the initial password for the admin user prompt, enter your admin password.
      Note: The initial password for the admin user is encrypted and stored in .yml file.
    8. At the Please enter the hostname where you will run IBM UrbanCode Velocity prompt, enter the host name where users can access the Web UI.
      The default value is localhost.

      The host name must resolve to a name on your DNS server, or in the server's hosts file. On Linux, the file location is etc/hosts; on Windows, the location is C:\Windows\System32\drivers\etc\hosts.

    9. At the Enter the desired port where IBM UrbanCode Velocity will run prompt, enter the port number for the Web UI.
      The default value is 443.
    10. At the Do you want to start IBM UrbanCode Velocity now? prompt, enter Y to start the IBM UrbanCode Velocity.
      Note: You can enter N to start the IBM UrbanCode Velocity at your convenience.
    11. Optional: If you are performing an offline installation, at the Choose how to receive offline docker images for IBM UrbanCode Velocity prompt, select one of the following options.
        • Local File System. Copy images to the file system and manually load them into the local Docker registry.
        • Local Docker Registry. Load images into the local Docker registry. This requires the Docker client on the host where the installation script is running.
        • Remote Docker Registry. Load images into the local Docker registry, and then tag the images and push them to a remote Docker registry. This requires the Docker client on the host where the installation script is running.
    The images are loaded on the local host.
  4. Complete installation by changing to the directory where you installed the product, and start Docker Compose. For example:
    ~/projects/velocity-se/ docker-compose up -d
    The IBM UrbanCode Velocity images are pulled from Docker Hub and configured for Docker Compose.

Access the IBM UrbanCode Velocity Web UI. The URL is https://hostname:port, where hostname and port are the values that you set during installation. The initial user name is admin and the default password is admin.

Installation properties are stored in the [installation_folder]/docker-compose/.env file. You can edit the properties appropriate for your environment. The env file contains a description for all installation properties, including the following properties:
Access_Key
The product access key obtained earlier.
NGINX_HOST
The domain of the URL the users will use to access IBM UrbanCode Velocity. The value is usually the hostname of the virtual machine where Docker Compose is running.
To complete installation, replace the supplied SSL public certificate and private key with your own copies. You can use OpenSSL to generate your own key with a command similar to the following example:
openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out certifcate.pem

Place your self-generated key and certificate in the [velocity-install-folder/product_version_number/conf/ssl folder.

After you purchase the product, you receive a permanent access key, and a license key.