Skip to content

Commit 9c3fcb6

Browse files
committed
docker: crosslinks corrected
1 parent 73cbcea commit 9c3fcb6

File tree

8 files changed

+50
-50
lines changed

8 files changed

+50
-50
lines changed

content/tutorials/development_containers1/index.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -58,15 +58,15 @@ or store and publish a whole image right away.
5858
In this notebook, you will find **installation instructions**, <a href="#sec-commands" class="quarto-xref"><b>useful commands</b></a>, references, and a loose assembly of general and almost philosophical topics to prime you on the **complications and misconceptions** surrounding containerization.
5959

6060
There are numerous useful build instructions and container images already out there, which you can **simply `pull` and `run`**.
61-
This is an easy, entry level application of container software like Docker, [covered in an introductory tutorial](../../tutorials/development_containers_run).
61+
This is an easy, entry level application of container software like Docker, [covered in an introductory tutorial](../../tutorials/development_containers2_run).
6262

63-
A second step is to set up and deploy a **self-`build` custom container** I demonstrate step-by-step [in a slightly more advanced tutorial](../../tutorials/development_containers_build).
63+
A second step is to set up and deploy a **self-`build` custom container** I demonstrate step-by-step [in a slightly more advanced tutorial](../../tutorials/development_containers3_build).
6464
This is intended to be a rather general test case, enabling you to later configure more specific container solutions for your own purpose.
6565
For example, you will learn how to spin up an existing `rocker/rstudio` container, and even modify it with additional system components and libraries.
6666

6767
For relevant INBO-specific use cases, make sure to [check out the `containbo` repository](https://github.com/inbo/containbo) which documents **even more tipps and tricks** assembled during my humble (but mostly succesful) attempts to get INBO R packages to run in a container environment.
6868

69-
I also present **Podman** as a [full replacement for Docker](../../tutorials/development_containers_podman), and recommend to give it a try.
69+
I also present **Podman** as a [full replacement for Docker](../../tutorials/development_containers4_podman), and recommend to give it a try.
7070

7171
On Windows, installation, configuration, and management of containers runs via the `docker desktop` app.
7272
However, this series of tutorials also covers (and in fact focuses on) the terminal-centered steps to be executed on a Linux computer or within a WSL.
@@ -186,7 +186,7 @@ docker --version
186186

187187
Congratulations: now the fun starts!
188188

189-
With docker installed, the next step is to run a container image which someone else has prepared and hosted online, [which you can read about in the next tutorial](../../tutorials/development_containers_run).
189+
With docker installed, the next step is to run a container image which someone else has prepared and hosted online, [which you can read about in the next tutorial](../../tutorials/development_containers2_run).
190190

191191
# The Holy Grail?
192192

@@ -266,7 +266,7 @@ Historically, Docker could not run "rootless", i.e. without elevated privileges
266266
[This seems to have changed](https://docs.docker.com/engine/security/rootless), according to Docker.
267267
Some caution is still warranted: the setup procedure requires downloading and running shell scripts (which must be checked); the deamon still builds on `systemd` (*usually* root level); some functionality is limited.
268268

269-
On the other hand, there is Podman (cf. the [Podman tutorial](../../tutorials/development_containers_podman)).
269+
On the other hand, there is Podman (cf. the [Podman tutorial](../../tutorials/development_containers4_podman)).
270270
It *used to* require almost the same extra steps as the `docker-rootless` to work rootless, but we found that these requirements are now met per default.
271271
It seems that, at the time of writing, Docker and Podman have identical capabilities in terms of rootless containerization.
272272
The remaining difference is that Podman seems to have more sensible default settings.
@@ -345,10 +345,10 @@ There are convenient GUI apps, and sophisticated terminal commands, the latter a
345345
This particular notebook assembled references, useful commands, information about the installation of Docker, and general considerations.
346346

347347
This is the central node of a series of tutorials; the others are:
348-
- Running containers: [https://tutorials.inbo.be/tutorials/development_containers_run](../development_containers_run)
349-
- Building containers: [https://tutorials.inbo.be/tutorials/development_containers_build](../development_containers_build)
348+
- Running containers: [https://tutorials.inbo.be/tutorials/development_containers2_run](../development_containers2_run)
349+
- Building containers: [https://tutorials.inbo.be/tutorials/development_containers3_build](../development_containers3_build)
350350
- Advanced Build Recipes: <https://github.com/inbo/containbo>
351-
- Switching to Podman: [https://tutorials.inbo.be/tutorials/development_containers_podman](../development_containers_podman)
351+
- Switching to Podman: [https://tutorials.inbo.be/tutorials/development_containers4_podman](../development_containers4_podman)
352352

353353
Personally, I find the concept of containerization fascinating, and was surprised how simple and useful of a trick it is.
354354

content/tutorials/development_containers1/index.qmd

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -59,18 +59,18 @@ In this notebook, you will find **installation instructions**, [**useful command
5959

6060

6161
There are numerous useful build instructions and container images already out there, which you can **simply `pull` and `run`**.
62-
This is an easy, entry level application of container software like Docker, [covered in an introductory tutorial](../../tutorials/development_containers_run).
62+
This is an easy, entry level application of container software like Docker, [covered in an introductory tutorial](../../tutorials/development_containers2_run).
6363

6464

65-
A second step is to set up and deploy a **self-`build` custom container** I demonstrate step-by-step [in a slightly more advanced tutorial](../../tutorials/development_containers_build).
65+
A second step is to set up and deploy a **self-`build` custom container** I demonstrate step-by-step [in a slightly more advanced tutorial](../../tutorials/development_containers3_build).
6666
This is intended to be a rather general test case, enabling you to later configure more specific container solutions for your own purpose.
6767
For example, you will learn how to spin up an existing `rocker/rstudio` container, and even modify it with additional system components and libraries.
6868

6969

7070
For relevant INBO-specific use cases, make sure to [check out the `containbo` repository](https://github.com/inbo/containbo) which documents **even more tipps and tricks** assembled during my humble (but mostly succesful) attempts to get INBO R packages to run in a container environment.
7171

7272

73-
I also present **Podman** as a [full replacement for Docker](../../tutorials/development_containers_podman), and recommend to give it a try.
73+
I also present **Podman** as a [full replacement for Docker](../../tutorials/development_containers4_podman), and recommend to give it a try.
7474

7575

7676
On Windows, installation, configuration, and management of containers runs via the `docker desktop` app.
@@ -203,7 +203,7 @@ docker --version
203203
Congratulations: now the fun starts!
204204

205205

206-
With docker installed, the next step is to run a container image which someone else has prepared and hosted online, [which you can read about in the next tutorial](../../tutorials/development_containers_run).
206+
With docker installed, the next step is to run a container image which someone else has prepared and hosted online, [which you can read about in the next tutorial](../../tutorials/development_containers2_run).
207207

208208

209209
# The Holy Grail?
@@ -293,7 +293,7 @@ Historically, Docker could not run "rootless", i.e. without elevated privileges.
293293
Some caution is still warranted: the setup procedure requires downloading and running shell scripts (which must be checked); the deamon still builds on `systemd` (*usually* root level); some functionality is limited.
294294

295295

296-
On the other hand, there is Podman (cf. the [Podman tutorial](../../tutorials/development_containers_podman)).
296+
On the other hand, there is Podman (cf. the [Podman tutorial](../../tutorials/development_containers4_podman)).
297297
It *used to* require almost the same extra steps as the `docker-rootless` to work rootless, but we found that these requirements are now met per default.
298298
It seems that, at the time of writing, Docker and Podman have identical capabilities in terms of rootless containerization.
299299
The remaining difference is that Podman seems to have more sensible default settings.
@@ -381,10 +381,10 @@ There are convenient GUI apps, and sophisticated terminal commands, the latter a
381381
This particular notebook assembled references, useful commands, information about the installation of Docker, and general considerations.
382382

383383
This is the central node of a series of tutorials; the others are:
384-
- Running containers: [https://tutorials.inbo.be/tutorials/development_containers_run](../development_containers_run)
385-
- Building containers: [https://tutorials.inbo.be/tutorials/development_containers_build](../development_containers_build)
384+
- Running containers: [https://tutorials.inbo.be/tutorials/development_containers2_run](../development_containers2_run)
385+
- Building containers: [https://tutorials.inbo.be/tutorials/development_containers3_build](../development_containers3_build)
386386
- Advanced Build Recipes: [https://github.com/inbo/containbo](https://github.com/inbo/containbo)
387-
- Switching to Podman: [https://tutorials.inbo.be/tutorials/development_containers_podman](../development_containers_podman)
387+
- Switching to Podman: [https://tutorials.inbo.be/tutorials/development_containers4_podman](../development_containers4_podman)
388388

389389

390390
Personally, I find the concept of containerization fascinating, and was surprised how simple and useful of a trick it is.

content/tutorials/development_containers2_run/index.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,10 @@ The good news:
4141
there are a gazillion **Docker images available** on repositories like [Docker Hub](https://hub.docker.com) or [Quay](https://quay.io).
4242

4343
This tutorial will show you how to use such "containers-to-go", thereby demonstrating some basic principles and vocabulary about containerization.
44-
I assume that you have [installed docker](../../tutorials/development_containers#sec-installation).
44+
I assume that you have [installed docker](../../tutorials/development_containers1#sec-installation).
4545
This tutorial will stay on the more involved route of running Docker in the terminal (the Docker Desktop "app" is rather self-explanatory, and you can manoever it easily with knowledge of terminal vocabulary).
46-
Once you master these first step, you can proceed to [customize your container images](../../tutorials/development_containers_build).
47-
You might also [consider Podman as a Docker alternative](../../tutorials/development_containers_podman).
46+
Once you master these first step, you can proceed to [customize your container images](../../tutorials/development_containers3_build).
47+
You might also [consider Podman as a Docker alternative](../../tutorials/development_containers4_podman).
4848

4949
## Example
5050

@@ -176,7 +176,7 @@ This basically enables two separate workflows, i.e. usage paradigms.
176176
The first option, which is the default, is that your container is stored on the system permanently.
177177
This counts for the upstream images, which are downloaded upon first invocation of a container.
178178
But also, changes you apply while working in the container are persistently stored until you log in again, using hard drive space of the host.
179-
Images may still be removed by manually running `docker rmi [...]` ([*cf.* "useful commands" in the overview tutorial](../../tutorials/development_containers#sec-commands)).
179+
Images may still be removed by manually running `docker rmi [...]` ([*cf.* "useful commands" in the overview tutorial](../../tutorials/development_containers1#sec-commands)).
180180

181181
In contrast, with the second option, `docker run --rm [...]`, ad-hoc changes in the container are removed when the container is finished.
182182
Unless, of course, you mount a local volume with `docker run --rm -v [...]` (<a href="#sec-mounting" class="quarto-xref">Section 0.2</a>).
@@ -230,10 +230,10 @@ For example, a collection of images for specific analysis pipelines at INBO are
230230
We consider these "stable" versions because they could be re-activated no matter what crazy future updates will shatter the R community, which enables us to return to all details of previous analyses.
231231

232232
This tutorial provided introductory details on how to run such images.
233-
If you would like to take this further and customize your containers, proceed with [the next tutorial about the `build` command](../../tutorials/development_containers_build).
234-
Those commands are practically identical [in Docker and Podman](../../tutorials/development_containers_podman).
233+
If you would like to take this further and customize your containers, proceed with [the next tutorial about the `build` command](../../tutorials/development_containers3_build).
234+
Those commands are practically identical [in Docker and Podman](../../tutorials/development_containers4_podman).
235235

236-
An overview on the topic is [available here](../../tutorials/development_containers).
236+
An overview on the topic is [available here](../../tutorials/development_containers1).
237237

238238
[^1]: I mostly follow [this tutorial](https://jsta.github.io/r-docker-tutorial/02-Launching-Docker.html).
239239

content/tutorials/development_containers2_run/index.qmd

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@ there are a gazillion **Docker images available** on repositories like [Docker H
4040

4141

4242
This tutorial will show you how to use such "containers-to-go", thereby demonstrating some basic principles and vocabulary about containerization.
43-
I assume that you have [installed docker](../tutorials/development_containers#sec-installation).
43+
I assume that you have [installed docker](../tutorials/development_containers1#sec-installation).
4444
This tutorial will stay on the more involved route of running Docker in the terminal (the Docker Desktop "app" is rather self-explanatory, and you can manoever it easily with knowledge of terminal vocabulary).
45-
Once you master these first step, you can proceed to [customize your container images](../tutorials/development_containers_build).
46-
You might also [consider Podman as a Docker alternative](../tutorials/development_containers_podman).
45+
Once you master these first step, you can proceed to [customize your container images](../tutorials/development_containers3_build).
46+
You might also [consider Podman as a Docker alternative](../tutorials/development_containers4_podman).
4747

4848

4949
## Example
@@ -189,7 +189,7 @@ This basically enables two separate workflows, i.e. usage paradigms.
189189
The first option, which is the default, is that your container is stored on the system permanently.
190190
This counts for the upstream images, which are downloaded upon first invocation of a container.
191191
But also, changes you apply while working in the container are persistently stored until you log in again, using hard drive space of the host.
192-
Images may still be removed by manually running `docker rmi [...]` ([*cf.* "useful commands" in the overview tutorial](../../tutorials/development_containers#sec-commands)).
192+
Images may still be removed by manually running `docker rmi [...]` ([*cf.* "useful commands" in the overview tutorial](../../tutorials/development_containers1#sec-commands)).
193193

194194

195195
In contrast, with the second option, `docker run --rm [...]`, ad-hoc changes in the container are removed when the container is finished.
@@ -254,7 +254,7 @@ We consider these "stable" versions because they could be re-activated no matter
254254

255255

256256
This tutorial provided introductory details on how to run such images.
257-
If you would like to take this further and customize your containers, proceed with [the next tutorial about the `build` command](../tutorials/development_containers_build).
258-
Those commands are practically identical [in Docker and Podman](../tutorials/development_containers_podman).
257+
If you would like to take this further and customize your containers, proceed with [the next tutorial about the `build` command](../tutorials/development_containers3_build).
258+
Those commands are practically identical [in Docker and Podman](../tutorials/development_containers4_podman).
259259

260-
An overview on the topic is [available here](../tutorials/development_containers).
260+
An overview on the topic is [available here](../tutorials/development_containers1).

content/tutorials/development_containers3_build/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ output:
2525
---
2626

2727

28-
By now, you [will have successfully installed](../../tutorials/development_containers#sec-installation) Docker or [Podman](../../tutorials/development_containers_podman).
29-
You hopefully succeeded in [running others' containers](../../tutorials/development_containers_run), e.g. from a container repository.
28+
By now, you [will have successfully installed](../../tutorials/development_containers1#sec-installation) Docker or [Podman](../../tutorials/development_containers4_podman).
29+
You hopefully succeeded in [running others' containers](../../tutorials/development_containers2_run), e.g. from a container repository.
3030

3131
Next, it is time to customize your container.
3232

@@ -278,10 +278,10 @@ When designing and building Dockerfiles, you effectively craft your own DIY Matr
278278
This may involve tinkering, some sawdust will fall off on the sides, but often the end product is quite presentable.
279279

280280
And that is one of the main purposes of a custom docker image: you can store a given set of interrelated software building blocks for later use (reproducibility).
281-
Some of these sets are rather rough, abstract, or general (like the images you get on image repositories, which you can [simply pull and run](../../tutorials/development_containers_run)).
281+
Some of these sets are rather rough, abstract, or general (like the images you get on image repositories, which you can [simply pull and run](../../tutorials/development_containers2_run)).
282282
Others are bespoke, containing exact requirements for a given task.
283-
Both functions are important building blocks of open science, and I elaborate more about this framework [in the main article on containerization](../../tutorials/development_containers).
284-
Docker is a specific implementation of the container concept, and you might also want to [try out Podman](../../tutorials/development_containers_podman) as an alternative.
283+
Both functions are important building blocks of open science, and I elaborate more about this framework [in the main article on containerization](../../tutorials/development_containers1).
284+
Docker is a specific implementation of the container concept, and you might also want to [try out Podman](../../tutorials/development_containers4_podman) as an alternative.
285285

286286
Good luck with all your DIY projects, and thank you for reading!
287287

0 commit comments

Comments
 (0)