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