Install singularity: PASSED
[centos@singularity-3 ~]$ hostname
singularity-3.8.1-centos-7-epel-testing.novalocal
[centos@singularity-3 ~]$ cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
[centos@singularity-3 ~]$ sudo yum -y install singularity-3.8.1 --enablerepo=epel-testing
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: ftpmirror.your.org
* epel: mirror.math.princeton.edu
* epel-testing: mirror.math.princeton.edu
* extras: mirror.netdepot.com
* updates: repo1.dal.innoscale.net
Resolving Dependencies
--> Running transaction check
---> Package singularity.x86_64 0:3.8.0-1.el7 will be updated
---> Package singularity.x86_64 0:3.8.1-1.el7 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Updating:
singularity x86_64 3.8.1-1.el7 epel-testing 37 M
Transaction Summary
================================================================================
Upgrade 1 Package
Total download size: 37 M
Downloading packages:
epel-testing/x86_64/prestodelta | 75 B 00:03
singularity-3.8.1-1.el7.x86_64.rpm | 37 MB 00:04
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Updating : singularity-3.8.1-1.el7.x86_64 1/2
Cleanup : singularity-3.8.0-1.el7.x86_64 2/2
Verifying : singularity-3.8.1-1.el7.x86_64 1/2
Verifying : singularity-3.8.0-1.el7.x86_64 2/2
Updated:
singularity.x86_64 0:3.8.1-1.el7
Complete!
[centos@singularity-3 ~]$ singularity --version
singularity version 3.8.1-1.el7
[centos@singularity-3 ~]$
Build (debootstrap) and exec a container from a definition file: PASSED
[centos@singularity-3 ~]$ hostname
singularity-3.8.1-centos-7-epel-testing.novalocal
[centos@singularity-3 ~]$ singularity --version
singularity version 3.8.1-1.el7
[centos@singularity-3 ~]$ sudo singularity build ubuntu-18.04.sif naked-singularity/definition-files/ubuntu/Singularity.ubuntu-18.04
INFO: Starting build...
...
The following packages will be REMOVED:
libdumbnet1*
0 upgraded, 0 newly installed, 1 to remove and 5 not upgraded.
After this operation, 91.1 kB disk space will be freed.
(Reading database ... 50661 files and directories currently installed.)
Removing libdumbnet1:amd64 (1.12-7build1) ...
Processing triggers for libc-bin (2.27-3ubuntu1.4) ...
INFO: Adding labels
INFO: Adding environment to container
INFO: Adding runscript
INFO: Creating SIF file...
INFO: Build complete: ubuntu-18.04.sif
[centos@singularity-3 ~]$ singularity exec ubuntu-18.04.sif python3 --version
Python 3.6.9
[centos@singularity-3 ~]$
Pull and run a container from DockerHub: PASSED
[centos@singularity-3 ~]$ hostname
singularity-3.8.1-centos-7-epel-testing.novalocal
[centos@singularity-3 ~]$ singularity --version
singularity version 3.8.1-1.el7
[centos@singularity-3 ~]$ singularity pull docker://godlovedc/lolcow
INFO: Converting OCI blobs to SIF format
INFO: Starting build...
Getting image source signatures
Copying blob 9fb6c798fa41 done
Copying blob 3b61febd4aef done
Copying blob 9d99b9777eb0 done
...
2021/08/19 16:36:47 info unpack layer: sha256:3b61febd4aefe982e0cb9c696d415137384d1a01052b50a85aae46439e15e49a
2021/08/19 16:36:47 info unpack layer: sha256:9d99b9777eb02b8943c0e72d7a7baec5c782f8fd976825c9d3fb48b3101aacc2
2021/08/19 16:36:47 info unpack layer: sha256:d010c8cf75d7eb5d2504d5ffa0d19696e8d745a457dd8d28ec6dd41d3763617e
2021/08/19 16:36:47 info unpack layer: sha256:7fac07fb303e0589b9c23e6f49d5dc1ff9d6f3c8c88cabe768b430bdb47f03a9
2021/08/19 16:36:47 info unpack layer: sha256:8e860504ff1ee5dc7953672d128ce1e4aa4d8e3716eb39fe710b849c64b20945
INFO: Creating SIF file...
[centos@singularity-3 ~]$ singularity run lolcow_latest.sif
_________________________________________
< Q: How do you keep a moron in suspense? >
-----------------------------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
[centos@singularity-3 ~]$
Pull a container from GHCR via oras and shell into it: PASSED
[centos@singularity-3 ~]$ singularity pull oras://ghcr.io/mkandes/naked-singularity:ubuntu-20.04
INFO: Downloading oras image
[centos@singularity-3 ~]$ singularity shell naked-singularity_ubuntu-20.04.sif
Singularity> python3 --version
Python 3.8.10
Singularity> md5sum naked-singularity_ubuntu-20.04.sif
da4e0bd4266ebdbaa68235ef74883c23 naked-singularity_ubuntu-20.04.sif
Singularity> sha256sum naked-singularity_ubuntu-20.04.sif
4ba73520c64bdf856d25b92e0bd8a22b52f346c258a4ac101f36bead971682a2 naked-singularity_ubuntu-20.04.sif
Singularity>
Convert a SIF to a sandbox and then modify it: PASSED
[centos@singularity-3 ~]$ hostname
singularity-3.8.1-centos-7-epel-testing.novalocal
[centos@singularity-3 ~]$ singularity --version
singularity version 3.8.1-1.el7
[centos@singularity-3 ~]$ sudo singularity build --sandbox ubuntu-18.04 ubuntu-18.04.sif
INFO: Starting build...
INFO: Verifying bootstrap image ubuntu-18.04.sif
WARNING: integrity: signature not found for object group 1
WARNING: Bootstrap image could not be verified, but build will continue.
INFO: Creating sandbox directory...
INFO: Build complete: ubuntu-18.04
[centos@singularity-3 ~]$ sudo singularity shell --writable ubuntu-18.04
Singularity> python --version
bash: python: command not found
Singularity> apt-get install python
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libpython-stdlib libpython2.7-minimal libpython2.7-stdlib python-minimal python2.7 python2.7-minimal
Suggested packages:
python-doc python-tk python2.7-doc binfmt-support
The following NEW packages will be installed:
libpython-stdlib libpython2.7-minimal libpython2.7-stdlib python python-minimal python2.7 python2.7-minimal
0 upgraded, 7 newly installed, 0 to remove and 5 not upgraded.
Need to get 3967 kB of archives.
After this operation, 16.8 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
...
Setting up python2.7 (2.7.17-1~18.04ubuntu1.6) ...
Setting up libpython-stdlib:amd64 (2.7.15~rc1-1) ...
Setting up python (2.7.15~rc1-1) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Processing triggers for mime-support (3.60ubuntu1) ...
Singularity> python --version
Python 2.7.17
Singularity> exit
exit
[centos@singularity-3 ~]$ singularity exec ubuntu-18.04 python --version
Python 2.7.17
[centos@singularity-3 ~]$
Tests performed and outcome:
clean install singularity: PASSED
yum install singularity --enablerepo=epel-testing
build, exec, run *.simg from definition file: PASSED
sudo singularity build ubuntu.simg ubuntu.def
singularity exec ubuntu.simg lsb_release -a
singularity run ubuntu.simg
build and exec *.simg from Docker Hub: PASSED
sudo singularity build ubuntu-docker.simg docker://ubuntu
singularity exec ubuntu-docker.simg cat /etc/os-release
build, exec, run *.simg from Singulartiy Hub: PASSED
sudo singularity build ubuntu-shub.simg shub://singularityhub/ubuntu
singularity exec ubuntu-shub.simg cat /etc/os-release
singularity run ubuntu-shub.simg
convert from .simg to .img and modify *.img with shell --writable: PASSED
singularity image.create --size 2048 ubuntu.img
sudo singularity build --writable ubuntu.img ubuntu.simg
sudo singularity shell --writable ubuntu.img
> apt-get install -y python
> exit
exec and run modified *.img: PASSED
singularity exec ubuntu.img python --version
singularity run ubuntu.img
Tests performed and outcome:
clean install singularity: PASSED
yum install singularity --enablerepo=epel-testing
build, exec, run *.simg from definition file: PASSED
sudo singularity build ubuntu.simg ubuntu.def
singularity exec ubuntu.simg lsb_release -a
singularity run ubuntu.simg
build and exec *.simg from Docker Hub: PASSED
sudo singularity build ubuntu-docker.simg docker://ubuntu
singularity exec ubuntu-docker.simg cat /etc/os-release
build, exec, run *.simg from Singulartiy Hub: PASSED
sudo singularity build ubuntu-shub.simg shub://singularityhub/ubuntu
singularity exec ubuntu-shub.simg cat /etc/os-release
singularity run ubuntu-shub.simg
convert from .simg to .img and modify *.img with shell --writable: PASSED
singularity image.create --size 2048 ubuntu.img
sudo singularity build --writable ubuntu.img ubuntu.simg
sudo singularity shell --writable ubuntu.img
> apt-get install -y python
> exit
exec and run modified *.img: PASSED
singularity exec ubuntu.img python --version
singularity run ubuntu.img
Tests performed and outcome:
clean install singularity: PASSED
yum install singularity --enablerepo=epel-testing
build, exec, run *.simg from definition file: PASSED
sudo singularity build ubuntu.simg ubuntu.def
singularity exec ubuntu.simg lsb_release -a
singularity run ubuntu.simg
build and exec *.simg from Docker Hub: PASSED
sudo singularity build ubuntu-docker.simg docker://ubuntu
singularity exec ubuntu-docker.simg cat /etc/os-release
build, exec, run *.simg from Singulartiy Hub: PASSED
sudo singularity build ubuntu-shub.simg shub://singularityhub/ubuntu
singularity exec ubuntu-shub.simg cat /etc/os-release
singularity run ubuntu-shub.simg
convert from .simg to .img and modify *.img with shell --writable: PASSED
singularity image.create --size 2048 ubuntu.img
sudo singularity build --writable ubuntu.img ubuntu.simg
sudo singularity shell --writable ubuntu.img
> apt-get install -y python
> exit
exec and run modified *.img: PASSED
singularity exec ubuntu.img python --version
singularity run ubuntu.img
Tests performed and outcome:
clean install singularity: PASSED yum install singularity --enablerepo=epel-testing
build, exec, run *.simg from definition file: PASSED sudo singularity build ubuntu.simg ubuntu.def singularity exec ubuntu.simg lsb_release -a singularity run ubuntu.simg
build and exec *.simg from Docker Hub: FAILED (known 'Kernal too old' error) sudo singularity build ubuntu-docker.simg docker://ubuntu singularity exec ubuntu-docker.simg cat /etc/os-release
build, exec, run *.simg from Singulartiy Hub: PASSED sudo singularity build ubuntu-shub.simg shub://singularityhub/ubuntu singularity exec ubuntu-shub.simg cat /etc/os-release singularity run ubuntu-shub.simg
convert from .simg to .img and modify *.img with shell --writable: PASSED singularity image.create --size 2048 ubuntu.img sudo singularity build --writable ubuntu.img ubuntu.simg sudo singularity shell --writable ubuntu.img > apt-get install -y python > exit
exec and run modified *.img: PASSED singularity exec ubuntu.img python --version singularity run ubuntu.img
Tests passed for Fedora 28:
Tests passed for Fedora 27:
Tests passed for CentOS 7.5:
Tests passed for CentOS 6.10:
Test failed, but only due too big of a difference in CentOS 6.10 and Ubuntu 18.04 kernels: - Checked Ubuntu version of Docker-based image with 'exec' ("singularity exec ubuntu-latest.simg cat /etc/*release")
Install singularity: PASSED
Build and exec a container from a definition file: PASSED
Pull and run a container from DockerHub: PASSED
Pull a container from GHCR via oras and shell into it: PASSED
Convert a SIF to a sandbox and then modify it: PASSED