找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 1544|回复: 0

openwrt 模拟docker创建容器

[复制链接]
发表于 2020-3-7 14:50 | 显示全部楼层 |阅读模式
本帖最后由 2557054528 于 2020-3-7 14:53 编辑

大神勿喷,主要是为了某些机器不能装docker而做的。


环境:支持chroot、解压所处的挂载点必须有>300M的空闲即可
先下载启动脚本,然后解压出来
sanbox
└─bin
        creat
        info
        install
        list
        rename
        sanbox
        start
        stop


进入目录sanbox/bin,执行
  1. ./install
复制代码
然后退回到sanbox,这时候就有sanbox
        └─bin
       └─system
       └─work
       └─os
       └─data
这样的目录结构。
此时进入到system,这里存放的是系统镜像,以后创建的容器都是基于这里的,可以使用debootstrap下载镜像到容器里,debootstrap使用教程https://www.cnblogs.com/feisky/p/2706066.html
注意:如果机器不支持debootstrap的话,可以在其他机器上面先下载好,然后打包上传过去,注意是哪个版本的就行【什么arm,i386,64之类的】

到此时,我们就把sanbox的环境建好了,然后就可以使用命令来创建容器
  1. sanbox creat demo #demo是容器名称
复制代码
如果不出意外,不出几秒钟的时间容器就创建好了,使用下面命令启动它
  1. sanbox start demo #demo是容器名称
复制代码
之后我们就进入了容器的bash命令行了,如果我们想要直接启动里面的可执行文件,可以在容器根目录新建start文件,输入下面内容
  1. ${@}
复制代码
然后保存,赋予可执行权限然后就可以愉快的调用chroot里面的内容啦
比如下面:
  1. ARIA2C="sanbox start demo start aria2c"#定义aria2c程序命令
  2. $ARIA2C  --enable-rpc --rpc-listen-all --rpc-allow-origin-all --conf-path=/config #启动
复制代码
当然了,我们还需要容器里面直接输入aria2c有效才行,所以需要在容器里面安装aria2c,其他的命令也是一样的道理。


sanbox可以多次使用start,其中如果是进入bash命令行,第一次start会有提示Welcome to there.[build],之后start就是Welcome to there.[fast]。
当然如果想要不使用资源,就stop就可以了。

如果想要删除容器请先stop 停止容器,然后手动执行下面代码
  1. rm sanbox/data/【容器名称】 -R
复制代码
这里提到的扩展脚本是为了在启动容器前运行的,还有就是容器准备stop时候也会调用,
容器启动前会调用D_mount,容器停止前会调用D_umount,我相信大家对mount应该熟悉吧,应该懂我的意思。

这里提到其他尚未介绍的命令:
  1. sanbox list
  2. sanbox rename
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-9-23 18:26

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

快速回复 返回顶部 返回列表