HTCondor supports a selection of container technologies as follows:
Docker containers are isolated processes running user-defined images within the host kernel space. You may consider using existing images from public repositories such as Docker Hub or creating your own. If the image is not present within the local registry, it will be automatically staged when you first run the job. Containers are nonpersistant, meaning that when the container exits any changes you have made will not be saved. Therefore one would have to either transfer files or mount volumes within the container.
For example use of Docker containers within HTCondor jobs see tutorial exercise9a.
Singularity similar to Docker provides a containerised environment that you can run your jobs in. You can use existing Docker containers, create your own Singularity containers or available through shared filesystems such as CVMFS.
For example usages of Singularity within HTCondor refer to tutorial exercise 9b.