-
Notifications
You must be signed in to change notification settings - Fork 18
Docker Containers
H. Joe Lee edited this page Mar 3, 2023
·
19 revisions
docker pull hdfgroup/hermes
docker run -it hdfgroup/hermes
hermes@6bcfd7679b0a:~$ stage_in
Usage: mpirun -n [nprocs] ./stage_in [url] [offset] [size] [dpe]
CAUTION: The image from DockerHub may throw Illegal Instruction for Spack-installed binaries. See #483.
There are four Dockerfiles at the top level of the Hermes repository. Three Docker images built from these Dockerfiles are available on Docker Hub:
-
hdfgroup/hermes:latest
- Hermes pre-built & ready to go -
hdfgroup/hermes-dev:latest
- For Hermes developers; it clones Hermes repo. -
hdfgroup/hermes-deps:latest
- For testers; this is used by the two images above.
Running one of these docker containers usually involves mounting volumes or directories of the host system in the docker container via the -v
option of the docker run
command, for example:
docker run --rm -it -v <host mount point1>:<container mount point1> \
-v <host mount point2>:<container mount point2> \
... \
--entrypoint bash <container image ID>
Developers: Do a git pull
and update the Git remotes if you want to keep your changes!
Editing files in a running container in Emacs (running on a host) is rather convenient with Tramp and docker-tramp.el
. For example:
C-x C-f /docker:user@container:/path/to/file
where
user is the user that you want to use inside the container (optional)
container is the id or name of the container
Multiple hops are supported as well.