Use the build.sh script available in the bin directory to build the Docker images. You can build all the following Docker images at once or you can choose to build the images individually. The following Docker images are built:

  • ASE
  • ABS
  • Dashboard
  • MongoDB
  • API Publish
  • Kafka
  • Zookeeper

It is a good practice to obfuscate the various keys and password in ASE, ABS, and Dashboard before building the Docker images. For more information on obfuscating keys and passwords, see the following topics:

Complete the following steps to build the Docker images:

  1. Configure the base image name and base image operating system details in the config/docker.conf file.
  2. Download the following PingIntelligence software in to the software directory:
    • ASE
    • ABS
    • PingIntelligence Dashboard
  3. Download OpenJDK 11.0.2, Elasticsearch 7.13.4, Kafka 2.5.0, Zookeeper 3.5.7 and MongoDB 4.2.0 in the external directory and save them with the name as shown in the following table:
    Software File name
    Elasticsearch elasticsearch.tar.gz
    OpenJDK 11.0.2 openjdk11.tar.gz
    Kafka kafka.tar.gz

    Download the kafka tar version 2.5.0 tar from https://archive.apache.org/dist/kafka/2.5.0/kafka_2.12-2.5.0.tgz

    Zookeeper zookeeper.tar.gz

    Download the zookeeper tar version 3.5.7 tar from https://archive.apache.org/dist/zookeeper/zookeeper-3.5.7/apache-zookeeper-3.5.7-bin.tar.gz

    MongoDB mongodb.tgz
    Note:

    Make sure that MongoDB is as per the base image configured in docker.conf file. Always build Kafka and Zookeeper images first, if building individually.

  4. Run the build.sh script to build the Docker images:
    docker-setup# ./bin/build.sh all
    Base image os: rhel
    Creating build context for ASE
    Creating Image
    Image created with tag pingidentity/ase:5.0
    Image saved to /home/ubuntu/docker-setup/images/pingidentity_ase.tar
    Creating build context for abs
    Creating Image
    Image created with tag pingidentity/abs:5.0
    Image saved to /home/ubuntu/docker-setup/images/pingidentity_abs.tar
    Creating build context for dashboard
    Creating Image
    Image created with tag pingidentity/dashboard:5.0
    Image saved to /home/ubuntu/docker-setup/images/pingidentity_dashboard.tar
    Creating build context for mongo
    Creating Image
    Image created with tag pingidentity/mongo:4.2.0
    Image saved to /home/ubuntu/docker-setup/images/pingidentity_mongo.tar
    root@ip-172-31-25-146:/home/ubuntu/docker-setup# vim lib/dashboard/context/entrypoint.sh
    Creating build context for apipublish
    Creating Image
    Image created with tag pingidentity/apipublish:5.1
    Image saved to /home/ubuntu/docker-setup/images/pingidentity_apipublish.tar
    Creating build context for kafka
    Creating Image
    Image created with tag pingidentity/kafka:5.1
    Image saved to /home/ubuntu/docker-setup/images/pingidentity_kafka.tar
    Creating build context for zookeeper
    Creating Image
    Image created with tag pingidentity/zookeeper:5.1
    Image saved to /home/ubuntu/docker-setup/images/pingidentity_zookeeper.tar
    

    The other options that you can give with build.sh are: ase, abs, dashboard, mongo, apipublish, kafka and zookeeper.

  5. Verify that the images are created by checking the local registry. Run the following command:
    sudo docker image ls | grep pingidentity
    pingidentity/dashboard                5.1       e9bbbb21c14d   18 hours ago    1.69GB
    pingidentity/apipublish               5.1       bc3878f8a340   23 hours ago    777MB
    pingidentity/mongo                    4.2.0     21a8177c0a35   23 hours ago    640MB
    pingidentity/abs                      5.1       540c5c384fba   23 hours ago    766MB
    pingidentity/ase                      5.1       262d9207d5de   23 hours ago    424MB
    pingidentity/zookeeper                5.1       1cf24526f8cf   23 hours ago    690MB
    pingidentity/kafka                    5.1       f9118757f234   23 hours ago    737MB
    
  6. Verify that the Docker images are saved in the images directory:
    docker-setup# ls -ltra images/
    -rw-------.  1 root root  601075200 Dec  2 00:24 pingidentity_kafka.tar
    -rw-------.  1 root root  554516992 Dec  2 00:24 pingidentity_zookeeper.tar
    -rw-------.  1 root root  287269376 Dec  2 00:24 pingidentity_ase.tar
    -rw-------.  1 root root  628353024 Dec  2 00:24 pingidentity_abs.tar
    -rw-------.  1 root root 1549656576 Dec  2 00:25 pingidentity_dashboard.tar
    -rw-------.  1 root root  503818752 Dec  2 00:26 pingidentity_mongo.tar
    -rw-------.  1 root root  637405184 Dec  2 00:26 pingidentity_apipublish.tar
    
Note:

The Docker images do not install any additional packages like vi editor and so on.