Deploying PingDirectory and PingDataSync ¶
Use Docker compose to deploy a PingDirectory and PingDataSync stack. PingDataSync will synchronize data from a source tree on a PingDirectory instance to a destination tree on the same PingDirectory instance. The entries from
ou=destination,o=sync will be synchronized every second.
Before you begin ¶
You must complete Get started to set up your DevOps environment and run a test deployment of the products.
About this task ¶
- Deploy the PingDirectory and PingDataSync stack.
- Test the deployment.
- Bring down or stop the stack.
Deploying the stack ¶
Go to your local
devops/pingidentity-devops-getting-started/11-docker-compose/04-simple-syncdirectory and enter:
docker-compose up -d
To check that PingDirectory and PingDataSync are healthy and running, enter:
To display the startup logs, enter:
docker-compose logs -f
To see the logs for a particular product container at any point, enter:
docker-compose logs <product-container-name>
Testing the deployment ¶
The stack syncs entries from
ou=destination,o=sync every second.
In one terminal window, tail the logs from the PingDataSync server:
docker logs 04-simple-sync_pingdatasync_1 -f
In a second window, make a change to the
docker container exec -it 04-simple-sync_pingdirectory_1 \ /opt/out/instance/bin/ldapmodify dn: uid=user.0,ou=people,ou=source,o=sync changetype: modify replace: description description: Change to source user.0 <Ctrl-D>
You'll see messages in the PingDataSync log showing
ADD/MODIFY of the user sync'd to the
To verify the messages in the PingDataSync log, enter:
docker container exec -it \ 04-simple-sync_pingdirectory_1 \ /opt/out/instance/bin/ldapsearch \ -b uid=user.0,ou=people,ou=destination,o=sync \ -s base '(&)' description
Entries similar to the following are returned:
# dn: uid=user.0,ou=People,ou=destination,o=sync # description: Change to source user.0
Cleaning Up ¶
When you no longer want to run this stack, bring the stack down.
To remove all of the containers and associated Docker networks, enter:
To stop the running stack without removing any of the containers or associated Docker networks, enter:
To remove attached Docker volumes, enter:
docker volume prune