Skip to content

System Requirements for Docker in AWS#

Hardware#

EC2 Instance having minimum of 8 cores, 32GB RAM & 100GB Storage (currently m5.2xlarge Instance Type).

Software#

The following packages would be required on your instance as per your operating system:

  • yum and rpm (RHEL/CentOS/Oracle/Amazon Linux)
  • zypper and php_curl (SLES)
  • apt (Debian/Ubuntu)
  • ssh, curl, tar, wget and gcc*
  • OpenSSL (v1.01, build 16 or later)
  • Python (with python-devel*)
  • Docker and Docker Compose
  • User account with sudo permissions

Network#

  • Selinux, firewall/iptables should be disabled to allow communication.
  • List of ports that can be configured for inbound and outbound connections. To know more about the service ports, see Ports of Privacera Services.

IAM Policy and Permissions#

For information on the IAM policy for EC2 instance, follow the link to configure access for each service.

Install Docker and Docker Compose#

  1. Log on to your Privacera host as ec2-user or a user with 'sudo' privileges.
  2. Install Docker, by executing the following:

    sudo yum install -y docker
    sudo sed -i 's/1024:4096/1024000:1024000/g' /etc/sysconfig/docker
    sudo cat /etc/sysconfig/docker
    sudo service docker start
    sudo systemctl enable docker
    sudo usermod -a -G docker ec2-user
    exit
    
  3. Log back into the same user account as in step 1. (This forces the usermod action).

  4. Install Docker-Compose:

    DOCKER_COMPOSE_VERSION="1.23.2"
    sudo curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose
    

Install dependencies for customized Databricks containers#

In Databricks, you can create a cluster using custom Docker images. See Customize containers with Databricks Container Services.

If you are deploying Privacera in a such a Databricks cluster, then the following dependencies are required for Privacera installation:

  • iptables
  • zip
  • acl

There are two ways of installing the dependencies:

Method 1

You can add the install commands in a Docker file used for creating the image. This is recommended method of installing the dependencies.

FROM databricksruntime/standard:7.x

RUN apt-get update -y && apt-get install zip -y && apt-get install iptables -y && apt-get install -y acl

RUN usermod -aG sudo ubuntu
RUN echo "$USER ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/root
RUN echo "ubuntu ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/ubuntu

Method 2

You can create an install script and attach it to the Databricks cluster. The dependencies will get installed when the cluster gets created.

To create the install script:

  1. Create a install_docker_depenedency.sh file.

    vi install_docker_depenedency.sh
    
  2. Add the following:

    #!/bin/bash
    set -x
    apt-get update -y && apt-get install zip -y && apt-get install iptables -y && apt-get install -y acl