欢迎光临散文网 会员登陆 & 注册

安卓端免root免内核编译运行容器&udocker基本使用教程【nethunter】【docker】

2023-02-18 10:53 作者:Ha汤圆cK  | 我要投稿

【最后一次更新:2023.1.24】

请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任~

1.前言

这是我写的第一篇文章也是国内目前唯一一篇完整的udocker安装教程,使用和绕坑教程~如有一些地方写得不好还望社区中的各位大佬小白体谅~下面就由汤圆我来给大家介绍Udocker....

2.简介

Udocker: 一个基本的用户工具,可以在批处理或交互式系统中执行简单的docker容器,而无需root权限和docker,具有依赖少,本地文件,无需root的特点

3.安装

0最新添加

忘了跟大家说了,直接在root下执行udocker会出现提示要求不以root运行

解决方案:在命令“udocker”后加入“--allow-root”

3.1安装依赖

-python3/python2

-pycurl/curl

-hashlib/openssl

-tar

-find

-chmod

-chgrp

-ldconfig

3.2安装udocker

安装方案一(推荐)

wget https://github.com/indigo-dc/udocker/releases/download/1.3.6/udocker-1.3.6.tar.gz

tar zxvf udocker-1.3.6.tar.gz

export PATH=`pwd`/udocker-1.3.6/udocker:$PATH

udocker install

其它方案:见https://indigo-dc.github.io/udocker/installation_manual.html

坑:运行udocker install时出现一些奇奇怪怪的报错

绕坑:

安装tarballs文件

curl -L https://github.com/jorge-lip/udocker-builds/raw/master/tarballs/udocker-englib-1.2.8.tar.gz > udocker-englib-1.2.8.tar.gz

设置tarballs文件路径并执行重新安装

export UDOCKER_TARBALL=udocker-englib-1.2.8.tar.gz

udocker install --force

4.使用

4.1Syntax

        Commands:

          search <repo/expression>      :搜索dockerhub以获取容器图像

          pull <repo/image:tag>         :从dockerhub拉取容器映像

          create <repo/image:tag>       :从拉取的图像创建容器

          run <container>               :执行容器

          images -l                     :列出容器图像

          ps -m -s                      :列出创建的容器

          name <container_id> <name>    :为容器命名

          rmname <name>                 :从容器中删除名称

          rename <name> <new_name>      :更改容器名称

          clone <container_id>          :克隆容器

          rm <container-id>             :删除容器

          rmi <repo/image:tag>          :删除图像

          import <tar> <repo/image:tag> :导入tar文件(由docker导出)

          import - <repo/image:tag>     :从stdin进口(由docker出口)

          export -o <tar> <container>   :导出容器目录树

          export - <container>          :导出容器目录树

          load -i <imagefile>           :从文件中加载图像(由docker保存)

          load                          :从stdin加载图像(由docker保存)

          save -o <imagefile> <repo/image:tag>  :将带有图层的图像保存到文件中

          inspect -p <repo/image:tag>   :返回图像上的低级信息

          verify <repo/image:tag>       :验证拉取或加载的图像

          protect <repo/image:tag>      :保护存储库

          unprotect <repo/image:tag>    :取消存储库保护

          protect <container>           :保护容器

          unprotect <container>         :取消储存库保护

          mkrepo <top-repo-dir>         :在位置创建另一个存储库

          setup                         :更改容器执行设置

          login                         :登录docker存储库

          logout                        :从docker存储库注销

          help                          :This help

          run --help                    :特定于命令的帮助

          version                       :显示udocker版本

        Options common to all commands must appear before the command:

          -D                            :Debug

          --quiet                       :更少的冗差

          --repo=<directory>            :在目录中使用存储库

          --insecure                    :允许不安全的未经身份验证https

          --allow-root


4.2用法案例(这里我以busybox容器为例)

在dockerhub中搜索容器图像:udocker search busybox 从dockerhub中拉取容器图像:udocker pull arm64v8/busybox(这边汤圆为安卓设备对应架构arm64v8) (提取容器:udocker create arm64v8/busybox) 提取并运行容器:udocker run arm64v8/busybox

提示:当运行udocker容器时出现报错说明容器架构可能与本机架构不同(如下图报错)

最后附上udocker成功运行busybox图片一张

提示:注意显示出的那段“乱码”(如下)

如需再次使用该容器可运行udocker run “乱码”

或者你可以运行udocker ps列出已提取的容器的“乱码”

如果运行udocker run arm64v8/busybox会重新提取容器并运行

 

提示:注意显示出的那段“乱码”(如下)

如需再次使用该容器可运行udocker run “乱码”

或者你可以运行udocker ps列出已提取的容器的“乱码”

如果运行udocker run arm64v8/busybox会重新提取容器并运行

4.3删除容器/已提取的容器

udocker rmi 容器名称

udocker rm 已提取的容器“乱码”

4.4更多高级使用

开源项目https://github.com/indigo-dc/udocker

使用手册https://indigo-dc.github.io/udocker/

5.交流群

6.参考

https://www.5axxw.c+om/wiki/content/7r7m6n

https://indigo-dc.github.io/udocker/

文章内容如有侵权请联系我~

【转载自:https://blog.csdn.net/qq_57851190/article/details/128757438】


安卓端免root免内核编译运行容器&udocker基本使用教程【nethunter】【docker】的评论 (共 条)

分享到微博请遵守国家法律