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

【最后一次更新:2024.5.5】

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

「下列操作不需要使用docker作为依赖实现」

文章目录

1.前言

2.简介

3.安装

0最新添加

3.1安装依赖

3.2安装udocker

4.使用

4.1Syntax

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

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

4.4更多高级使用

5.祝愿大家春节快乐:)

6.参考

【转载请注明出处及原作者】


1.前言

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

2.简介

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

3.安装

0最新添加

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

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

如:udocker --allow-root install

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.使用

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

解决方案:在命令“udocker”后

 

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容器时出现报错说明容器架构可能与本机架构不同(如下图报错)cae4ae70059946c288226ea9d4e18864.png

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

1cad3b1a9996414880e284a1340f8648.png

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

如需再次使用该容器可运行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.参考

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

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

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

【iOS整活计划:传送门

【转载请注明出处及原作者】

 

 

 

 

 

  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TY汤圆

创作不易~汤圆卖艺~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值