mrrl-containers

MRRL version of container scripts
git clone https://ccx.te2000.cz/git/mrrl-containers
Log | Files | Refs

commit f09161b465252ca70a0ff07d517f85507da1b761
parent 9d4d5eb5ea0c3f8ef9bf69559dbeb01d043d9ac2
Author: Jan Pobrislo <ccx@te2000.cz>
Date:   Thu, 20 Mar 2025 20:07:00 +0000

pthbs-build container

Diffstat:
Mzsh-functions/confz_containers_init | 51+++++++++++++++++++++++++++++++++++++++++++++++++++
Mzsh-functions/confz_site_containers_init | 1+
2 files changed, 52 insertions(+), 0 deletions(-)

diff --git a/zsh-functions/confz_containers_init b/zsh-functions/confz_containers_init @@ -844,6 +844,57 @@ confz_container_generic_layout_check() { require fs_o filename="$vars[root]/tmp" owner=$vars[uid]:$vars[gid] } +# --- mrrl via bind-mount --- +confz_container_mrrl_base_layout_check() { + checkvars root + defvar uid 0 + defvar gid 0 + + require container_generic_layout :root :uid :gid + + require fs_l filename="$vars[root]/versions" destination="mnt/versions" + require fs_l filename="$vars[root]/sbin" destination="bin" + require fs_l filename="$vars[root]/usr" destination="." + + require fs_d filename="$vars[root]/etc" + require fs_m filename="$vars[root]/etc" mode=0755 + require fs_o filename="$vars[root]/etc" owner=$vars[uid]:$vars[gid] + + require fs_l filename="$vars[root]/etc/mtab" destination="/proc/mounts" + # require fs_o filename="$vars[root]/etc/mtab" owner=$vars[uid]:$vars[gid] + + require fs_d filename="$vars[root]/proc" + require fs_m filename="$vars[root]/proc" mode=0755 + require fs_o filename="$vars[root]/proc" owner=$vars[uid]:$vars[gid] + + require fs_d filename="$vars[root]/root" + require fs_m filename="$vars[root]/root" mode=0700 + require fs_o filename="$vars[root]/root" owner=$vars[uid]:$vars[gid] + + require fs_d filename="$vars[root]/sys" + require fs_m filename="$vars[root]/sys" mode=0755 + require fs_o filename="$vars[root]/sys" owner=$vars[uid]:$vars[gid] + + require fs_d filename="$vars[root]/var" + require fs_m filename="$vars[root]/var" mode=0755 + require fs_o filename="$vars[root]/var" owner=$vars[uid]:$vars[gid] + + require fs_d filename="$vars[root]/var/empty" + require fs_m filename="$vars[root]/var/empty" mode=0555 + require fs_o filename="$vars[root]/var/empty" owner=$vars[uid]:$vars[gid] + + require fs_l filename="$vars[root]/var/run" destination="../run" + # require fs_o filename="$vars[root]/var/run" owner=$vars[uid]:$vars[gid] +} + +confz_container_mrrl_image_check() { + checkvars containers_dir image_name + + require container_image_layout :containers_dir :image_name \ + %uid %gid %root %sysroot_user + require container_mrrl_layout :uid :gid :root +} + # --- Alpine --- confz_container_alpine_base_layout_check() { diff --git a/zsh-functions/confz_site_containers_init b/zsh-functions/confz_site_containers_init @@ -277,6 +277,7 @@ confz_site_containers_user_check() { UC spark alpine-dev-spark mount_rw="ccx-bzr" UC ssrn-master-dev alpine-postgresql-dev mount_rw="ccx-bzr" $in_netns UC pthbs-dev alpine-pthbs-dev mount_rw="ccx-bzr" "$ro pthbs mrrl" $in_netns $with_more_fds + UC pthbs-build mrrl-bindmount "$ro versions mrrl" $in_netns $with_more_fds UC gentoo-prefix-dev alpine-gentoo-dev $with_opt "$ro versions" UC x11-dev gentoo-xorg mount_rw="ccx-bzr" $in_netns # -- mail