17726: Link singularity install docs. Add dispatch-lsf mention.
[arvados.git] / doc / install / singularity.html.textile.liquid
1 ---
2 layout: default
3 navsection: installguide
4 title: Singularity container runtime
5 ...
6 {% comment %}
7 Copyright (C) The Arvados Authors. All rights reserved.
8
9 SPDX-License-Identifier: CC-BY-SA-3.0
10 {% endcomment %}
11
12 Arvados can be configured to use Singularity instead of Docker to execute containers on cloud nodes or a SLURM/LSF cluster.
13
14 Please note:
15 * *Singularity support is currently considered experimental.*
16 * Even when using the singularity runtime, users' container images are expected to be saved in Docker format using @arv keep docker@. Arvados converts the Docker image to Singularity format (@.sif@) at runtime as needed. Specifying a @.sif@ file as an image when submitting a container request is not yet supported.
17 * Singularity does not limit the amount of memory available in a container. Each container will have access to all memory on the host where it runs.
18 * Programs running in containers may behave differently due to differences between Singularity and Docker, _e.g._, the root (image) filesystem is read-only in a Singularity container.
19 * Arvados is currently tested with Singularity version 3.5.2.
20
21 To use singularity, first make sure "Singularity is installed":https://sylabs.io/guides/3.5/user-guide/quick_start.html on your cloud worker image or SLURM/LSF compute nodes as applicable. Note @squashfs-tools@ is required.
22
23 <notextile>
24 <pre><code>$ <span class="userinput">singularity version</span>
25 3.5.2
26 $ <span class="userinput">mksquashfs -version</span>
27 mksquashfs version 4.3-git (2014/06/09)
28 [...]
29 </code></pre>
30 </notextile>
31
32 Then update @Containers.RuntimeEngine@ in your cluster configuration:
33
34 <notextile>
35 <pre><code>      # Container runtime: "docker" (default) or "singularity" (experimental)
36       RuntimeEngine: singularity
37 </code></pre>
38 </notextile>
39
40 Restart your dispatcher (@crunch-dispatch-slurm@, @arvados-dispatch-cloud@, or @arvados-dispatch-lsf@) after updating your configuration file.