Installation and setup for Docker Compose
Delphix has announced the depreciation of support for Docker Compose with DCT version 13.0.0. The January 2024 release starts a 12-month depreciation period for all supported versions on Docker Compose. All prior and current product versions will continue to be supported on Docker Compose until January 2025. However, production DCT workloads in Docker Compose are not supported.
It is highly recommended that new DCT installations are performed on Kubernetes or OpenShift.
Hardware requirements
The hardware requirements for Data Control Tower are listed below. In addition to these requirements, inbound port 443 must be open for API clients, and outbound port 443 to engines.
CPU: 4-Core
CPU Architecture: x86_64
Memory: 16GB
Storage: 50GB
Port: 443
Installation requirements (Docker Compose)
DCT requires Docker and Docker Compose to run, thus, Linux versions and distributions that have been verified to work with Docker are supported. To see a list of supported distributions, please reference this Docker article.
This example uses a Docker installation and is completed on an Ubuntu 20.04 VM.
To begin, uninstall any old versions of Docker.
sudo apt-get remove docker docker-engine docker.io containerd runc
Next, update the package lists and install Docker.
sudo apt-get update
sudo apt-get install docker.io
Last, install Docker Compose.
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Docker-Compose is packaged with Docker engine version 20.10.15 and up.
Running Docker as non-root (optional)
To avoid prefacing the Docker command with sudo, create a Unix group called docker and add users to it. When the Docker daemon starts, it creates a Unix socket accessible by members of the Docker group. See Docker Post Installation documentation for details.
sudo groupadd docker
sudo usermod -aG docker $USER
Unpack and install DCT
Once Docker and Docker Compose are installed, DCT can be installed. Begin by downloading the latest version of the tarball from the Delphix Download site. Next, transfer the file to the Linux machine where Docker is installed. Run the following commands to extract the containers and load them into Docker (where x.0.0
should be changed to the version of DCT being installed):
tar -xzf delphix-dct-x.0.0.tar.gz
for image in *tar; do sudo docker load --input $image; done
Run DCT
To run DCT, navigate to the location of the extracted docker-compose.yaml file from the tarball and run the following command. Using -d
in the command will start up the application in the background.
sudo docker-compose up -d
Running docker ps
should show 10 containers up and running:
sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
055edf0f7a69 registry.delphix.com/delphix-dct:nginx-x.0.0 "/sbin/tini -- /boot…" 14 seconds ago Up 11 seconds 0.0.0.0:443->8443/tcp docker-compose-proxy-1
e4d6fb13ff31 registry.delphix.com/delphix-dct:app-x.0.0 "java -jar /opt/delp…" 14 seconds ago Up 12 seconds docker-compose-gateway-1
0c891ae846fc registry.delphix.com/delphix-dct:virtualization-app-x.0.0 "java -jar /opt/delp…" 14 seconds ago Up 12 seconds docker-compose-virtualization-app-1
833fa7c4fc08 registry.delphix.com/delphix-dct:ui-x.0.0 "node ./index.js" 14 seconds ago Up 13 seconds docker-compose-ui-1
53a01a48e372 registry.delphix.com/delphix-dct:virtualization-x.0.0 "/sbin/tini -- sh bo…" 14 seconds ago Up 12 seconds docker-compose-virtualization-1
4b6361dd7a21 registry.delphix.com/delphix-dct:data-bookmarks-x.0.0 "/sbin/tini -- sh bo…" 14 seconds ago Up 4 seconds docker-compose-data-bookmarks-1
dcc4ce68196d registry.delphix.com/delphix-dct:jobs-x.0.0 "/sbin/tini -- sh bo…" 14 seconds ago Up 5 seconds docker-compose-jobs-1
bfff3410386a registry.delphix.com/delphix-dct:delphix-data-library-x.0.0 "/sbin/tini -- sh bo…" 14 seconds ago Up 13 seconds docker-compose-data-library-1
5b8c5e88123d registry.delphix.com/delphix-dct:masking-x.0.0 "java -jar /opt/delp…" 14 seconds ago Up 13 seconds docker-compose-masking-1
76cc44b7338d registry.delphix.com/delphix-dct:graphql-x.0.0 "./tools/bootstrap.sh" 15 seconds ago Up 13 seconds docker-compose-graphql-1
5f6e375b4d98 registry.delphix.com/delphix-dct:postgres-x.0.0 "docker-entrypoint.s…" 15 seconds ago Up 13 seconds 5432/tcp docker-compose-database-1
Initial logging configuration
To restrict boundless log file generation, DCT is now shipped with default logging drivers provided with default values for max-size
and max-file
options, for all services in the docker-compose.yaml file.
These values can also be overwritten to correspond with the user requirement. Use the process below to modify the settings.
Open the docker-compose.yaml file.
Add the following lines in every service section below.
CODElogging: driver: "json-file" options: max-file: "5" max-size: 10m
The
driver
parameter above means the logging driver is a JSON file. For these services, a maximum of five log files (max-file
) will be retained with a size of 10MB (max-size
), after which files are overwritten.The maximum number of logs and the maximum log file size shown in 2a can be changed by updating the values for
max-file
andmax-size
.