气泡包装容器
bubblewrap
容器使用 bubblewrap 工具创建新的内核命名空间,并在与系统其他部分隔离的沙盒中运行请求的二进制文件。这是 Linux Flatpak 生态系统 中使用的底层技术。有关使用测试应用程序的示例设置,请参阅 Bubblewrap 容器示例。
目标系统上至少需要安装 bubblewrap
版本 0.5。尽管如此,推荐使用最新的上游版本。
bubblewrap
容器作为插件构建和加载,但默认情况下未启用。可以通过应用程序管理器的配置文件并使用其唯一的 ID(bubblewrap
)来配置它。
containers: bubblewrap: sharedNamespaces: [ '-all', '+net' ] bindMountHome: yes configuration: symlink: usr/lib: '/lib' usr/lib64: '/lib64' usr/bin: [ '/bin', '/sbin' ] ro-bind: /usr/bin: '/usr/bin' /usr/lib: '/usr/lib' /usr/lib64: '/usr/lib64' /etc: '/etc' /usr/share/fonts: '/usr/share/fonts' /usr/share/fontconfig: '/usr/share/fontconfig' /usr/share/ca-certificates: '/usr/share/ca-certificates' /sys/dev/char: '/sys/dev/char' ${CONFIG_PWD}/imports: '${CONFIG_PWD}/imports' ro-bind-try: '/sys/devices/pci0000:00': '/sys/devices/pci0000:00' /usr/share/glvnd/egl_vendor.d: '/usr/share/glvnd/egl_vendor.d' /usr/share/X11/xkb: '/usr/share/X11/xkb' /run/resolvconf: '/run/resolvconf' dev: '/dev' dev-bind: /dev/dri: '/dev/dri' tmpfs: /tmp proc: /proc
bubblewrap
容器接受以下配置设置
设置名称 | 类型 | 描述 |
---|---|---|
bwrap-location | string | 到 bwrap 二进制的路径。如果没有配置路径,则使用标准的 $PATH 来查找可执行文件。 |
configuration | object | 用于配置插件沙盒化的双层映射对象。顶层 keys 被转换成传递给 bubblewrap 二进制文件的可选项。值本身用作用户选项的参数。以下是一个配置示例:configuration: symlink: usr/lib: '/lib' usr/lib64: '/lib64' usr/bin: [ '/bin', '/sbin' ] ro-bind: /usr/bin: '/usr/bin' /usr/lib: '/usr/lib' /usr/lib64: '/usr/lib64' |
bindMountHome | bool | 将当前用户的整个 Home 目录挂载到容器中。这可以用于开发目的。(默认:false) |
sharedNamespaces | list<string> | 这为您提供了对与容器共享(或未共享)的内核命名空间的细粒度控制。以下命名空间受支持:all, net, user, ipc, pid, net, uts, cgroup 。每个条目都必须以+或-开头,以指示是否应共享该命名空间。第一项必须是 all 并设置基线:您可以先取消共享所有内容然后再共享特定的命名空间(《-all, +pid, +ipc》),或者您可以先共享所有内容然后再取消共享单个命名空间(《+all, -net》)。(默认:-all ) |
networkSetupScript | string | 要执行的 shell 脚本的路径,该脚本在容器启动和停止时执行,以便正确设置和关闭容器的网络。有关示例脚本,请参阅 Bubblewrap 容器示例。 注意:如果您设置了此选项: |
unshareNetwork | string | 已弃用。请使用 sharedNamespaces 和 networkSetupScript 。 |
© 2024 Qt公司限有限公司。本期内提供的文档贡献均为其各自所有者的版权。所提供的文档受自由软件基金会发布的GNU自由文档许可证版本1.3条款下的许可。Qt及其相关商标为芬兰及全球其他国家的Qt公司有限公司的商标。所有其他商标均为各自所有者的财产。