Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,21 +83,21 @@ The goal is to help candidates:
* [Describe and demonstrate how to use certificate-based client-server authentication to ensure a Docker daemon has the rights to access images on a registry.](data/3_installation_and_configuration/cert_based_auth_registry.yaml)
* [Describe the use of namespaces, cgroups, and certificate configuration.](data/3_installation_and_configuration/describe_namespaces_cgroups_certificates.yaml)
* [Describe and interpret errors to troubleshoot installation issues without assistance.](data/3_installation_and_configuration/install_troubleshooting.yaml)
* [Describe and demonstrate the steps to deploy the Docker engine, UCP, and DTR on AWS and on-premises in an HA configuration.](data/3_installation_and_configuration/deploy_ucp_dtr_ha.yaml)
* [Describe and demonstrate how to configure backups for UCP and DTR.](data/3_installation_and_configuration/backup_ucp_dtr.yaml)
* [Describe and demonstrate the steps to deploy the Docker engine, UCP (now MKE), and DTR (now MSR) on AWS and on-premises in an HA configuration.](data/3_installation_and_configuration/deploy_ucp_dtr_ha.yaml)
* [Describe and demonstrate how to configure backups for UCP (now MKE) and DTR (now MSR).](data/3_installation_and_configuration/backup_ucp_dtr.yaml)

### Domain 4: Networking (15% of exam)

* [Describe the Container Network Model and how it interfaces with the Docker engine and network and IPAM drivers.](data/4_Networking/container_network_model.yaml)
* [Describe the different types and use cases for the built-in network drivers.](data/4_Networking/describe_different_types_use_cases_built_in_network_drivers.yaml)
* [Describe the types of traffic that flow between the Docker engine, registry and UCP controllers.](data/4_Networking/describe_engine_registry_ucp_traffic.yaml)
* [Describe the types of traffic that flow between the Docker engine, registry and UCP (now MKE) controllers.](data/4_Networking/describe_engine_registry_ucp_traffic.yaml)
* [Describe and demonstrate how to create a Docker bridge network for developers to use for their containers.](data/4_Networking/bridge_network_create.yaml)
* [Describe and demonstrate how to publish a port so that an application is accessible externally.](data/4_Networking/describe_demonstrate_publish_port_application_accessible_externally.yaml)
* [Identify which IP and port a container is externally accessible on.](data/4_Networking/identify_container_ip_port.yaml)
* [Compare and contrast “host” and “ingress” publishing modes.](data/4_Networking/compare_contrast_host_ingress_publishing_modes.yaml)
* [Describe and demonstrate how to configure Docker to use external DNS.](data/4_Networking/configure_external_dns.yaml)
* [Describe and demonstrate how to use Docker to load balance HTTP/HTTPs traffic to an application (Configure L7 load balancing with Docker EE)](data/4_Networking/http_https_load_balancing.yaml).
* [Understand and describe the types of traffic that flow between the Docker engine, registry, and UCP controllers](data/4_Networking/understand_engine_registry_ucp_traffic.yaml)
* [Describe and demonstrate how to use Docker to load balance HTTP/HTTPs traffic to an application (Configure L7 load balancing with Docker Enterprise)](data/4_Networking/http_https_load_balancing.yaml).
* [Understand and describe the types of traffic that flow between the Docker engine, registry, and UCP (now MKE) controllers](data/4_Networking/understand_engine_registry_ucp_traffic.yaml)
* [Describe and demonstrate how to deploy a service on a Docker overlay network.](data/4_Networking/deploy_overlay_service.yaml)
* [Describe and demonstrate how to troubleshoot container and engine logs to resolve connectivity issues between containers.](data/4_Networking/troubleshoot_container_connectivity.yaml)
* [Describe how to route traffic to Kubernetes pods using ClusterIP and NodePort services.](data/4_Networking/k8s_clusterip_nodeport.yaml)
Expand All @@ -111,13 +111,13 @@ The goal is to help candidates:
* [Describe swarm default security.](data/5_Security/swarm_default_security.yaml)
* [Describe MTLS.](data/5_Security/describe_mtls.yaml)
* [Describe identity roles.](data/5_Security/security_identity_roles.yaml)
* [Compare and contrast UCP workers and managers.](data/5_Security/compare_contrast_ucp_workers_managers.yaml)
* [Describe the process to use external certificates with UCP and DTR.](data/5_Security/external_certs_ucp_dtr.yaml)
* [Compare and contrast UCP (now MKE) workers and managers.](data/5_Security/compare_contrast_ucp_workers_managers.yaml)
* [Describe the process to use external certificates with UCP (now MKE) and DTR (now MSR).](data/5_Security/external_certs_ucp_dtr.yaml)
* [Describe and demonstrate that an image passes a security scan.](data/5_Security/image_security_scan.yaml)
* [Describe and demonstrate how to enable Docker Content Trust.](data/5_Security/describe_demonstrate_how_enable_docker_content_trust.yaml)
* [Describe and demonstrate how to configure RBAC with UCP.](data/5_Security/ucp_rbac_config.yaml)
* [Describe and demonstrate how to integrate UCP with LDAP/AD.](data/5_Security/ucp_ldap_ad_integration.yaml)
* [Describe and demonstrate how to create UCP client bundles.](data/5_Security/ucp_client_bundle.yaml)
* [Describe and demonstrate how to configure RBAC with UCP (now MKE).](data/5_Security/ucp_rbac_config.yaml)
* [Describe and demonstrate how to integrate UCP (now MKE) with LDAP/AD.](data/5_Security/ucp_ldap_ad_integration.yaml)
* [Describe and demonstrate how to create UCP (now MKE) client bundles.](data/5_Security/ucp_client_bundle.yaml)
* [Describe Docker Bench for Security.](data/5_Security/docker_bench_security.yaml)
* [Describe seccomp profiles.](data/5_Security/seccomp_profiles.yaml)
* [Describe AppArmor and SELinux with Docker.](data/5_Security/apparmor_selinux.yaml)
Expand All @@ -131,7 +131,7 @@ The goal is to help candidates:
* [Compare and contrast object and block storage and when they should be used.](data/6_storage_and_volumes/contrast_object.yaml)
* [Describe how an application is composed of layers and where these layers reside on the filesystem.](data/6_storage_and_volumes/layers_filesystem.yaml)
* [Describe the use of volumes with Docker for persistent storage.](data/6_storage_and_volumes/persistent_storage.yaml)
* [Identify the steps to take to clean up unused images on a filesystem and DTR.](data/6_storage_and_volumes/unused_images.yaml)
* [Identify the steps to take to clean up unused images on a filesystem and DTR (now MSR).](data/6_storage_and_volumes/unused_images.yaml)
* [Describe and demonstrate how storage can be used across cluster nodes.](data/6_storage_and_volumes/volume_cluster.yaml)
* [Describe how to provision persistent storage to a Kubernetes pod using persistentVolumes.](data/6_storage_and_volumes/persistent_volumes.yaml)
* [Describe the relationship between container storage interface drivers, storageClass, persistentVolumeClaim and volume objects in Kubernetes.](data/6_storage_and_volumes/relationship_storage_volume.yaml)
Expand All @@ -154,7 +154,7 @@ Contributions are welcome! You can:

* This is a community-driven, unofficial project.
* It is not sponsored or endorsed by Docker Inc. or Mirantis.
* All trademarks such as Docker”, “Mirantis”, “DTR”, and “UCP” are used only as references and remain the property of their respective owners.
* All trademarks such as "Docker", "Mirantis", "DTR" (now MSR), "UCP" (now MKE), "MKE", and "MSR" are used only as references and remain the property of their respective owners.
* This repository contains only original content, created under fair use for educational purposes.
* Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries. Docker, Inc. and other parties may also hold trademark rights to other terms used in this document.

Expand Down
26 changes: 13 additions & 13 deletions data/3_installation_and_configuration/backup_ucp_dtr.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
questions:
- uuid: 2fd05cc9-0e15-4ac4-ae3b-9a49ac0380f6
question: Which command allows you to back up UCP data?
question: Which command allows you to back up UCP (now MKE) data?
answers:
- { value: 'docker swarm backup', correct: false }
- { value: 'docker ucp export', correct: false }
Expand All @@ -9,7 +9,7 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/ucp/backup-restore.html

- uuid: 0b122010-4d64-44ff-8153-f33c3dc3e2f0
question: What must be done before performing a UCP restore?
question: What must be done before performing a UCP (now MKE) restore?
answers:
- { value: 'Stop the Docker service on the target node', correct: true }
- { value: 'Delete all volumes', correct: false }
Expand All @@ -18,7 +18,7 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/ucp/backup-restore.html#restore

- uuid: fdc31b03-3093-4638-a77f-ef7b11860d88
question: Which command allows you to back up a DTR instance?
question: Which command allows you to back up a DTR (now MSR) instance?
answers:
- { value: 'docker registry save', correct: false }
- { value: 'docker dtr snapshot', correct: false }
Expand All @@ -27,7 +27,7 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/dtr/backup-restore.html

- uuid: fdbb11c1-6f7c-4e93-b487-c4ecdb6f315c
question: Which command is used to restore a DTR backup?
question: Which command is used to restore a DTR (now MSR) backup?
answers:
- { value: 'docker container exec dtr restore backup.tar', correct: false }
- { value: 'docker dtr load backup.tar', correct: false }
Expand All @@ -36,16 +36,16 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/dtr/backup-restore.html

- uuid: 7b313274-0072-41a0-bd16-170c8672c845
question: What is essential for a DTR restore to work correctly?
question: What is essential for a DTR (now MSR) restore to work correctly?
answers:
- { value: 'Have Docker Desktop installed', correct: false }
- { value: 'Use only port 2376', correct: false }
- { value: 'Be connected to the Internet', correct: false }
- { value: 'Use the same DTR version as the backup', correct: true }
- { value: 'Use the same DTR (now MSR) version as the backup', correct: true }
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/dtr/backup-restore.html#restore-backup

- uuid: 38f20494-3c31-4c83-9f39-b3e0b5c6db48
question: Where are the critical UCP data stored that must be backed up?
question: Where are the critical UCP (now MKE) data stored that must be backed up?
answers:
- { value: '/opt/ucp', correct: false }
- { value: '/var/ucp/data', correct: false }
Expand All @@ -54,7 +54,7 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/ucp/backup-restore.html

- uuid: 91f9d1ef-d40b-40fa-a45e-4cb95641727b
question: What is the best practice for scheduling UCP and DTR backups?
question: What is the best practice for scheduling UCP (now MKE) and DTR (now MSR) backups?
answers:
- { value: 'Automate the backup with scripts and store it outside the cluster', correct: true }
- { value: 'Perform a manual backup once a month', correct: false }
Expand All @@ -63,25 +63,25 @@ questions:
help: https://docs.mirantis.com/mke/3.7/ops/disaster-recovery/back-up-mke/backup-considerations.html

- uuid: 65ae1827-32ec-4d6f-84ed-f41fef47135e
question: Can a full UCP cluster be restored from a single backup?
question: Can a full UCP (now MKE) cluster be restored from a single backup?
answers:
- { value: 'No, UCP does not support restoration', correct: false }
- { value: 'Yes, if it was taken on a UCP manager with quorum', correct: true }
- { value: 'Yes, if it was taken on a UCP (now MKE) manager with quorum', correct: true }
- { value: 'Yes, but only if Swarm is disabled', correct: false }
- { value: 'No, a backup of each node is required', correct: false }
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/ucp/backup-restore.html

- uuid: 32590a06-2d90-4b13-8c20-6e06ac3d00e0
question: What is a common reason for failure when restoring a DTR backup?
question: What is a common reason for failure when restoring a DTR (now MSR) backup?
answers:
- { value: 'Lack of Internet access', correct: false }
- { value: 'Version incompatibility between the backup and the installed DTR', correct: true }
- { value: 'Version incompatibility between the backup and the installed DTR (now MSR)', correct: true }
- { value: 'DTR already in HA mode', correct: false }
- { value: 'Incorrectly named volume', correct: false }
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/dtr/backup-restore.html#restore-backup

- uuid: 5cf798e7-d097-4992-8b7b-36b63329207d
question: What best practice should accompany UCP/DTR backups?
question: What best practice should accompany UCP (now MKE)/DTR (now MSR) backups?
answers:
- { value: 'Use only local backups', correct: false }
- { value: 'Disable TLS to simplify restoration', correct: false }
Expand Down
22 changes: 11 additions & 11 deletions data/3_installation_and_configuration/deploy_ucp_dtr_ha.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
questions:
- uuid: 8fdbfa8e-244d-46b8-9041-c74d649bca78
question: Which command installs UCP on an existing Docker node?
question: Which command installs UCP (now MKE) on an existing Docker node?
answers:
- { value: 'docker install ucp', correct: false }
- { value: 'docker ucp deploy', correct: false }
Expand All @@ -9,7 +9,7 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/ucp/install/

- uuid: 7b11b126-0b6a-4fdf-979c-2e2d413fc3fd
question: How many manager nodes are required for an HA UCP setup with quorum?
question: How many manager nodes are required for an HA UCP (now MKE) setup with quorum?
answers:
- { value: '5', correct: false }
- { value: '3', correct: true }
Expand All @@ -18,7 +18,7 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/ucp/architecture/#high-availability

- uuid: 2aeebc5e-b670-42b1-a5ff-8fa7ccedfe9e
question: Which command adds a new UCP manager node to an existing cluster?
question: Which command adds a new UCP (now MKE) manager node to an existing cluster?
answers:
- { value: 'docker swarm join --ucp-manager', correct: false }
- { value: 'docker ucp add-manager', correct: false }
Expand All @@ -27,7 +27,7 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/ucp/install/join-linux-nodes.html

- uuid: 21ef8613-10b2-4e0f-a2f3-e2c1d1c8593f
question: Which command is recommended to install DTR on a UCP node?
question: Which command is recommended to install DTR (now MSR) on a UCP (now MKE) node?
answers:
- { value: 'docker dtr deploy', correct: false }
- { value: 'docker registry install', correct: false }
Expand All @@ -45,16 +45,16 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/ucp/on-aws/

- uuid: c41396d4-17f0-4a8a-9981-1b205728c9c5
question: What requirement is necessary to deploy DTR in HA?
question: What requirement is necessary to deploy DTR (now MSR) in HA?
answers:
- { value: 'A latest tag on all images', correct: false }
- { value: 'Shared or replicated persistent storage', correct: true }
- { value: 'Root access on all workers', correct: false }
- { value: 'A single UCP manager', correct: false }
- { value: 'A single UCP (now MKE) manager', correct: false }
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/dtr/architecture/#high-availability

- uuid: 85e4de92-7298-4217-9c7c-f3e3ea8c2e84
question: Which command checks the status of UCP services after installation?
question: Which command checks the status of UCP (now MKE) services after installation?
answers:
- { value: 'docker swarm status', correct: false }
- { value: 'docker ucp status', correct: false }
Expand All @@ -63,16 +63,16 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/ucp/troubleshoot/

- uuid: e65f1c8b-fba5-434a-a1bb-b8461c1d1b2e
question: What is a good practice to balance load across UCP nodes in HA?
question: What is a good practice to balance load across UCP (now MKE) nodes in HA?
answers:
- { value: 'Disable TLS', correct: false }
- { value: 'Use a node label', correct: false }
- { value: 'Use a load balancer in front of UCP managers', correct: true }
- { value: 'Use a load balancer in front of UCP (now MKE) managers', correct: true }
- { value: 'Enable debug mode', correct: false }
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/ucp/architecture/#ucp-high-availability

- uuid: e47cb7f3-ef17-4718-bbe1-6b13de8ae260
question: Can UCP and DTR be deployed on the same nodes?
question: Can UCP (now MKE) and DTR (now MSR) be deployed on the same nodes?
answers:
- { value: 'No, except with Docker Desktop', correct: false }
- { value: 'Yes, only on AWS', correct: false }
Expand All @@ -81,7 +81,7 @@ questions:
help: https://docs.mirantis.com/docker-enterprise/v3.1/dockeree-products/dtr/install/plan-your-installation.html

- uuid: cdb987f6-48b6-4f4c-9f2f-c34c1c36c837
question: Which option allows a secondary DTR node to synchronize with a primary node?
question: Which option allows a secondary DTR (now MSR) node to synchronize with a primary node?
answers:
- { value: '--standby', correct: false }
- { value: '--join-token', correct: false }
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
questions:
- uuid: 915cfc8c-72d3-46a7-9797-fc980ef2452d
question: What is the minimum recommended number of CPUs for installing Docker Universal Control Plane (UCP)?
question: What is the minimum recommended number of CPUs for installing Docker Universal Control Plane (UCP, now MKE)?
answers:
- { value: '4', correct: true }
- { value: '1', correct: false }
Expand All @@ -9,7 +9,7 @@ questions:
help: https://docs.mirantis.com/mke/3.4/launchpad/lp-system-requirements.html

- uuid: bbc16b4e-7291-4b64-9270-14b60c9a0d79
question: What is the minimum amount of RAM recommended for a UCP manager node?
question: What is the minimum amount of RAM recommended for a UCP (now MKE) manager node?
answers:
- { value: '16 GB', correct: true }
- { value: '8 GB', correct: false }
Expand All @@ -27,7 +27,7 @@ questions:
help: https://docs.docker.com/storage/storagedriver/overlayfs-driver/

- uuid: 67a48e29-32c3-4267-a931-c08b3cb0531b
question: For DTR (Docker Trusted Registry), what is the minimum disk space required per node?
question: For DTR (Docker Trusted Registry, now MSR), what is the minimum disk space required per node?
answers:
- { value: '50 GB', correct: false }
- { value: '100 GB', correct: true }
Expand Down Expand Up @@ -72,7 +72,7 @@ questions:
help: https://docs.docker.com/storage/

- uuid: 05176b68-5a8b-4814-8753-ffec40440f12
question: What is the typical port required to access UCP via a browser?
question: What is the typical port required to access UCP (now MKE) via a browser?
answers:
- { value: '8080', correct: false }
- { value: '443', correct: true }
Expand Down
2 changes: 1 addition & 1 deletion data/3_installation_and_configuration/hub_users_teams.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ questions:
answers:
- { value: 'Yes, but only with a paid account', correct: false }
- { value: 'No, a user is tied to only one organization', correct: false }
- { value: 'No, except with Docker Enterprise', correct: false }
- { value: 'No, except with Docker Enterprise (now Mirantis)', correct: false }
- { value: 'Yes', correct: true }
help: https://docs.docker.com/docker-hub/orgs/

Expand Down
Loading