非root用户使用singularity启动容器:

module load amd/go/1.19.3  #云主机单独安装go,版本需要>1.19

export VERSION=3.11.3 #指定版本
wget https://github.com/sylabs/singularity/releases/download/v${VERSION}/singularity-ce-${VERSION}.tar.gz #下载
./mconfig --prefix=/PATH/singularityCE-3.11.3 --without-seccomp --without-conmon --without-suid #编译安装到指定目录
make -C builddir/
make -C builddir install
在要运行容器的节点执行
echo 28633 >> /proc/sys/user/max_user_namespaces
vim /etc/subuid
vim /etc/subgid
编辑两个文件添加以下内容
username:100000:65536 #开启命名空间,允许非root用户创建命名空间
docker容器转singularity:
docker容器打包:
docker images
docker save c6ab05d10f7f -o ubuntu.tar
传输至账号下:
singularity build --sandbox ubuntu docker-archive://ubuntu.tar

启动容器挂载存储并可以编辑:
singularity shell --fakeroot --writable -B /localdir:/data  ubuntu

注:fakeroot权限
文章作者: Administrator
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 IKKO
linux 权限 docker
喜欢就支持一下吧