Deploy PingDirectory and PingDataSync ¶
You'll 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.
What You'll Do ¶
- Deploy the PingDirectory and PingDataSync stack.
- Test the deployment.
- Bring down or stop the stack.
- You've already been through Get started to set up your DevOps environment and run a test deployment of the products.
Deploy Stack ¶
Go to your local
docker-compose up -d
Check that PingDirectory and PingDataSync are healthy and running:
You can also display the startup logs:
docker-compose logs -f
To see the logs for a particular product container at any point, enter:
docker-compose logs <product-container-name>
Test the Deployment ¶
The stack will sync 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/MODIFYof the user sync'd to the
ou=destination,o=synctree. To verify this, 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 this will be returned:
# dn: uid=user.0,ou=People,ou=destination,o=sync # description: Change to source user.0
Clean 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
docker volume prune