Skip to content

Commit 22b83c6

Browse files
committed
update slide deck 3
1 parent 729e5c1 commit 22b83c6

1 file changed

Lines changed: 58 additions & 18 deletions

File tree

docs/udocker/udocker-03.md

Lines changed: 58 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,21 @@ Mario David <david@lip.pt>, Jorge Gomes <jorge@lip.pt>
5050

5151
---
5252

53+
## Recap from last slide deck: udocker Installation
54+
55+
* The end user can download and execute `udocker` without system administrator intervention.
56+
* Install from a released version:
57+
* Download a release tarball from <https://github.com/indigo-dc/udocker/releases>:
58+
59+
```bash
60+
wget https://github.com/indigo-dc/udocker/releases/download/1.3.17/udocker-1.3.17.tar.gz
61+
tar zxvf udocker-1.3.17.tar.gz
62+
export PATH=`pwd`/udocker-1.3.17/udocker:$PATH
63+
udocker install
64+
```
65+
66+
---
67+
5368
<!-- _class: lead -->
5469

5570
# Importing and exporting, loading and saving: images and containers
@@ -65,10 +80,10 @@ Mario David <david@lip.pt>, Jorge Gomes <jorge@lip.pt>
6580
```bash
6681
git clone https://github.com/mariojmdavid/docker-gromacs-cuda.git
6782
cd docker-gromacs-cuda/gromacs-cpu/
68-
docker build --build-arg gromacs_ver=2023 -t gromacs -f Dockerfile-cpu .
83+
docker build --build-arg gromacs_ver=2025.4 -t gromacs-openmp-2005.4 -f Dockerfile-cpu .
6984
```
7085

71-
* (Will take quite awhile)
86+
* (Will take quite awhile, 30 minutes on my desktop)
7287

7388
---
7489

@@ -78,14 +93,14 @@ After you build the image with docker:
7893

7994
```bash
8095
docker images
81-
REPOSITORY TAG IMAGE ID CREATED SIZE
82-
gromacs latest 8473080f1963 3 minutes ago 376MB
96+
REPOSITORY TAG IMAGE ID CREATED SIZE
97+
gromacs-openmp-2005.4 latest e0228510f76f 22 minutes ago 456MB
8398
```
8499

85100
Save the image with `docker` to a tarball:
86101

87102
```bash
88-
docker save -o gromacs.tar gromacs
103+
docker save -o gromacs.tar gromacs-openmp-2005.4
89104
```
90105

91106
---
@@ -95,15 +110,15 @@ docker save -o gromacs.tar gromacs
95110
You can load a tarball with `udocker` that is a docker image, and that you saved previously with docker:
96111

97112
```bash
98-
udocker load -i gromacs.tar gromacs
113+
udocker load -i gromacs.tar gromacs-openmp-2005.4
99114
```
100115

101116
And now you can check several things:
102117

103118
```bash
104119
udocker images
105120
REPOSITORY
106-
gromacs:latest .
121+
gromacs-openmp-2005.4:latest .
107122

108123
```
109124

@@ -112,11 +127,11 @@ gromacs:latest .
112127
## Create a container and run it
113128

114129
```bash
115-
udocker create --name=grom gromacs
130+
udocker create --name=grom gromacs-openmp-2005.4
116131

117132
udocker ps
118133
CONTAINER ID P M NAMES IMAGE
119-
e2e014d9-9770-3fb5-a4a9-098a95371adf . W ['grom'] gromacs:latest
134+
e2e014d9-9770-3fb5-a4a9-098a95371adf . W ['grom'] gromacs-openmp-2005.4:latest
120135

121136
udocker run grom env
122137
******************************************************************************
@@ -126,7 +141,7 @@ udocker run grom env
126141
******************************************************************************
127142
executing: env
128143
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/gromacs/bin
129-
LD_LIBRARY_PATH=:/usr/local/gromacs/lib
144+
LD_LIBRARY_PATH=/usr/local/gromacs/lib
130145
```
131146

132147
---
@@ -135,16 +150,24 @@ LD_LIBRARY_PATH=:/usr/local/gromacs/lib
135150

136151
```bash
137152
udocker run grom gmx mdrun -h
153+
154+
******************************************************************************
155+
* *
156+
* STARTING ad754a36-b951-38da-a116-a05fb572d7ca *
157+
* *
138158
******************************************************************************
139159
executing: gmx
140-
:-) GROMACS - gmx mdrun, 2022 (-:
160+
:-) GROMACS - gmx mdrun, 2025.4 (-:
161+
141162
Executable: /usr/local/gromacs/bin/gmx
142163
Data prefix: /usr/local/gromacs
143164
Working dir: /home
144165
Command line:
145166
gmx mdrun -h
167+
146168
SYNOPSIS
147169
gmx mdrun [-s [<.tpr>]] [-cpi [<.cpt>]] [-table [<.xvg>]] [-tablep [<.xvg>]]
170+
...
148171
```
149172
150173
---
@@ -154,11 +177,13 @@ gmx mdrun [-s [<.tpr>]] [-cpi [<.cpt>]] [-table [<.xvg>]] [-tablep [<.xvg>]]
154177
You can check the dockerfile: <https://github.com/mariojmdavid/docker-gromacs-cuda/blob/master/gromacs-cpu/Dockerfile-cpu>
155178
156179
```dockerfile
157-
FROM ubuntu:22.04
180+
FROM ubuntu:24.04
158181
LABEL maintainer="Mario David <mariojmdavid@gmail.com>"
182+
ARG gromacs_ver
183+
RUN apt-get update \
159184
...
160185
ENV PATH=$PATH:/usr/local/gromacs/bin
161-
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gromacs/lib
186+
ENV LD_LIBRARY_PATH=/usr/local/gromacs/lib
162187
WORKDIR /home
163188
```
164189
@@ -172,7 +197,7 @@ Just check the `ENV` and `WORKDIR`:
172197
udocker run grom env
173198
...
174199
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/gromacs/bin
175-
LD_LIBRARY_PATH=:/usr/local/gromacs/lib
200+
LD_LIBRARY_PATH=/usr/local/gromacs/lib
176201

177202
udocker run grom pwd
178203
...
@@ -221,10 +246,24 @@ Now you can import this container into an image with a given tag (empty tag defa
221246
222247
```bash
223248
udocker import mypython.tar mypython:v1.0
224-
udocker images
249+
```
250+
251+
---
252+
253+
## `udocker` list images long format
254+
255+
```bash
256+
udocker images -l
225257
REPOSITORY
226258
...
227-
mypython:v1.0 .
259+
almalinux:9 .
260+
/home/david/.udocker/repos/almalinux/9
261+
/sha256:c9bcec02f046478f7ecf78b9568b666cc3b63a2effe339b1022e3b550faca3e8 (0 MB)
262+
/sha256:08d3c44badca17b0b810e53779272d43e9542081ae05f516071ae4d5d2369271 (67 MB)
263+
mypython:v1.0 .
264+
/home/david/.udocker/repos/mypython/v1.0
265+
/9e1605be9a6064f41fe0ee83c6ad3cd644d77d5b3c8ff45af4157719ccd627a3.json (0 MB)
266+
/9e1605be9a6064f41fe0ee83c6ad3cd644d77d5b3c8ff45af4157719ccd627a3.layer (780 MB)
228267
```
229268
230269
---
@@ -237,12 +276,13 @@ mypython:v1.0 .
237276
238277
## Mounting a directory in the container - I
239278
240-
Assume you have a directory you want to use inside the container, and grab yourself a tpr file:
279+
Assume you have a directory you want to use inside the container.
280+
First grab yourself a tpr file:
241281
242282
```bash
243283
mkdir -p $HOME/udocker-tutorial/gromacs/input
244284
cd $HOME/udocker-tutorial/gromacs/input/
245-
wget --no-check-certificate https://download.ncg.ingrid.pt/webdav/gromacs-input/md.tpr
285+
wget --no-check-certificate https://download.a.acnca.pt/webdav/gromacs-input/md.tpr
246286
```
247287
248288
---

0 commit comments

Comments
 (0)