Debian 容器 这个工具使用 Linux 的 mount namespace、PID namespace 和 network namespace,创建 一个最小 Debian 实验环境。 用法: 第一次创建基础软件包 tarball: sudo ./debian-container.sh base-create \ --output ./debian-stable.tar.gz \ --suite stable \ --arch amd64 \ --include sudo,vim-tiny,curl 从 tarball 创建容器: sudo ./debian-container.sh init test-1 --tarball ./debian-stable.tar.gz sudo ./debian-container.sh init test-2 --tarball ./debian-stable.tar.gz 进入容器: sudo ./debian-container.sh enter test-1 sudo ./debian-container.sh enter test-1 --network host 在容器中执行命令: sudo ./debian-container.sh exec test-1 -- uname -a sudo ./debian-container.sh exec test-1 --network host -- apt-get update 列出和查看容器: sudo ./debian-container.sh list sudo ./debian-container.sh status test-1 删除容器: sudo ./debian-container.sh delete test-1 直接联网初始化容器: sudo ./debian-container.sh init test-3 默认情况下,实例数据位于当前目录的 instances/ 下: instances/test-1/rootfs.ext4 instances/test-1/root/ 默认基础 tarball: debian-base.tar.gz 可以通过环境变量修改路径: sudo env \ DEBIAN_INSTANCES=/path/to/instances \ ./debian-container.sh enter 可配置的环境变量: DEBIAN_INSTANCES 实例目录 DEBIAN_LOCK_FILE 锁文件路径 DEBIAN_TARBALL 默认基础 tarball 路径 DEBIAN_SUITE Debian 版本,默认 stable DEBIAN_ARCH 目标架构 DEBIAN_MIRROR Debian 镜像地址 DEBIAN_INCLUDE 额外软件包,使用逗号分隔 DEBIAN_EXCLUDE 要排除的软件包,使用逗号分隔 DEBIAN_NETWORK 默认网络模式,none 或 host 脚本实现按职责拆分在 lib/ 目录中,入口脚本只负责加载模块和分发命令。