forked from pool/apptainer
Christian Goll
5c09db8b93
- Updated to v1.0.1 with following bug fixes * Don't prompt for y/n to overwrite an existing file when build is called from a non-interactive environment. Fail with an error. * Preload NSS libraries prior to mountspace name creation to avoid circumstances that can cause loading those libraries from the container image instead of the host, for example in the startup environment. * Fix race condition where newly created loop devices can sometimes not be opened. * Support nvidia-container-cli v1.8.0 and above, via fix to capability set. OBS-URL: https://build.opensuse.org/request/show/962878 OBS-URL: https://build.opensuse.org/package/show/network:cluster/apptainer?expand=0&rev=6
95 lines
4.1 KiB
Plaintext
95 lines
4.1 KiB
Plaintext
openSUSE/SUSE specific Settings
|
|
===============================
|
|
|
|
openSUSE and SUSE have a small difference with upstream default.
|
|
This means the SUID root binaries distributed by singularty are
|
|
executable only by users belonging to the group 'apptainer'.
|
|
|
|
Otherwise, users will get an error message like this one:
|
|
|
|
FATAL: while executing /usr/lib/apptainer/bin/starter-suid: permission denied
|
|
|
|
To add a user to the group apptainer, execute (as root):
|
|
|
|
# usermod -a -G apptainer <user_login>
|
|
|
|
Create Apptainer Images from openSUSE/SLE
|
|
===========================================
|
|
|
|
To create openSUSE/SLE apptainer images from scratch a number
|
|
of bootdef variables need to be specified:
|
|
|
|
1. Create a bootdef file (for instance 'sle.def'), add
|
|
BootStrap: zypper
|
|
2. Set the OS version:
|
|
OSVersion: 15.0
|
|
The version number corresponds to the Leap version or the
|
|
SLE version and service pack level: <version>.<service_pack_level>
|
|
Example: SLE-12 SP4 would be 12.4.
|
|
The inital release of a major version corresponds to
|
|
<service_pack_level> 0.
|
|
3. For openSUSE the following additional variables need to be
|
|
specified:
|
|
* MirrorURL: URL to the installation repository.
|
|
Check 'man 8 zypper' for supported formats
|
|
* UpdateURL: (optional) URI of the update repository
|
|
4. For SLE, all required settings are obtained from SCC.
|
|
The following variables are recognized:
|
|
* Product: The product code: The following forms may be
|
|
used:
|
|
<product_id>
|
|
<product_id>/<os_version>
|
|
<product_id>/<os_version>/<arch>
|
|
<product_id>: SLES, SLE-HPC (SLE-12),
|
|
SLE_HPC (SLE-15), SLED
|
|
<os_version>: optional, if ommitted, the value
|
|
of OSVersion will be used.
|
|
The variable %{OSVERSION} is
|
|
recognized and replaced by OSVersion.
|
|
<arch> : The architecture to use. Defaults
|
|
to 'uname -m'.
|
|
* User: The email a subscription is registed with SCC.
|
|
* Regcode: The SCC registration code provided with the subscription.
|
|
* ProductPGP: The PGP key used to sign the repositories. Each line must
|
|
be terminated with \n. Long lines may be broken using the
|
|
continuation character '\'. See below.
|
|
Note: this is not required when an installer repository is
|
|
provided with MirrorURL.
|
|
Beginning with version 15, the URI to the installer image needs to be
|
|
provided as well:
|
|
* MirrorURL: Repository containing the SLE Installer (see also above).
|
|
Since SLE-15 consists of modules, a list of modules to be used should
|
|
to be specified as well:
|
|
* Modules: Specify the modules in a comma separated list without
|
|
spaces. Example:
|
|
SLEModules: sle-module-basesystem,sle-module-server-applications,sle-module-web-scripting,sle-module-hpc
|
|
|
|
Examples
|
|
========
|
|
Example defintions for SLE12-SP5 and SLE15-SP3 are in the same
|
|
directory as README.SUSE
|
|
|
|
ProductPGP
|
|
==========
|
|
SLEpgp: -----BEGIN PGP PUBLIC KEY BLOCK-----\n\
|
|
Version: rpm-4.11.2 (NSS-3)\n\
|
|
\n\
|
|
mQENBFEKlmsBCADbpZZbbSC5Zi+HxCR/ynYsVxU5JNNiSSZabN5GMgc9Z0hxeXxp\n\
|
|
YWvFoE/4n0+IXIsp83iKvxf06Eu8je/DXp0lMqDZu7WiT3XXAlkOPSNV4akHTDoY\n\
|
|
91SJaZCpgUJ7K1QXOPABNbREsAMN1a7rxBowjNjBUyiTJ2YuvQRLtGdK1kExsVma\n\
|
|
hieh/QxpoDyYd5w/aky3z23erCoEd+OPfAqEHd5tQIa6LOosa63BSCEl3milJ7J9\n\
|
|
vDmoGPAoS6ui7S2R5X4/+PLN8Mm2kOBrFjhmL93LX0mrGCMxsNsKgP6zabYKQEb8\n\
|
|
L028SXvl7EGoA+Vw5Vd3wIGbM73PfbgNrXjfABEBAAG0KFN1U0UgUGFja2FnZSBT\n\
|
|
aWduaW5nIEtleSA8YnVpbGRAc3VzZS5kZT6JATwEEwECACYCGwMGCwkIBwMCBBUC\n\
|
|
CAMEFgIDAQIeAQIXgAUCWEfrHwUJDsIitAAKCRBwr56BOdt8gpqUB/wPSSS5BcDu\n\
|
|
Oi4n02cj4Hdt7WITKBjjo0lG1fXG1ppx1wOST+s8FertMVFY53TW6FGjcYtwVOIq\n\
|
|
rsMYiV6kf1NxUV/jcAy7VmC5EZnO0R/D3sT4Oh5hsLtERauZolK5BZmd0S51Qa8e\n\
|
|
TxZ5mX9PL2i3s/ShETc30drf83ugc7B4yZPNQWXNDPgGcC+hEeC5qw48RzHYIpUt\n\
|
|
RzHmefR5Z3ioTUbDlzy+SGP2uA7mhR4Lfk/df5fYxWfCoKlyGjtrvA65cB+Pksyn\n\
|
|
xrAeBuB+vBM+KnDrxW2Sn4AbWkzH//dfz9OJDJu4UM91hb7qxM0OkrXHQV3iNqzg\n\
|
|
MDEhky/9NqMy\n\
|
|
=GdP5\n\
|
|
-----END PGP PUBLIC KEY BLOCK-----
|
|
|
|
|