[an error occurred while processing this directive]

Использование инструментария Podman для запуска контейнеров во FreeBSD
Начиная с выпуска FreeBSD 14.2 стали формироваться образы контейнеров в
формате  OCI (Open Container Initiative). Для запуска контейнеров на основе
этих образов можно применять инструментарий Podman, который портирован для
FreeBSD и доступен для установки из пакетов.

Для загрузки предложены три варианта образов FreeBSD:

  • static - урезанное окружение для выполнения только статически собранных исполняемых файлов
  • dynamic - расширенный вариант окружения static с компонентами для использования разделяемых библиотек и запуска динамически скомпонованных исполняемых файлов.
  • minimal - дополняет вариант dynamic утилитами для формирования привычного консольного окружения с UNIX shell и пакетным менеджером. Установка Podman во FreeBSD. pkg install -r FreeBSD -y podman-suite emulators/qemu-user-static Настройка ZFS-раздела для контейнеров: zfs create -o mountpoint=/var/db/containers zroot/containers zfs snapshot zroot/containers@empty При желании использовать UFS вместо ZFS в /usr/local/etc/containers/storage.conf заменяем "zfs"/driver на "vfs": sed -I .bak -e 's/driver = "zfs"/driver = "vfs"/' \ /usr/local/etc/containers/storage.conf Создаём конфигурацию межсетевого экрана PF - /etc/pf.conf, используя пример /usr/local/etc/containers/pf.conf.sample. Перезапускаем PF sysctl net.pf.filter_local=1 service pf restart Монтируем /dev/fd: mount -t fdescfs fdesc /dev/fd Создаём необходимые для Podman файлы конфигурации, используя примеры: /usr/local/etc/containers/containers.conf.sample /usr/local/etc/containers/policy.json.sample /usr/local/etc/containers/registries.conf.sample /usr/local/etc/containers/storage.conf.sample Устанавливаем образы контейнеров minimal, dynamic и static с FreeBSD 4.2: export OCIBASE=https://download.freebsd.org/releases/OCI-IMAGES/14.2-RELEASE/amd64/Latest podman load -i=$OCIBASE/FreeBSD-14.2-RELEASE-amd64-container-image-minimal.txz podman load -i=$OCIBASE/FreeBSD-14.2-RELEASE-amd64-container-image-dynamic.txz podman load -i=$OCIBASE/FreeBSD-14.2-RELEASE-amd64-container-image-static.txz Проверяем список установленных образов контейнеров командами "podman images" и "buildah images": podman images REPOSITORY TAG IMAGE ID CREATED SIZE localhost/freebsd14-minimal 14.2-RELEASE-amd64 c5f3e77557a9 4 days ago 35.1 MB localhost/freebsd14-dynamic 14.2-RELEASE-amd64 ebf7538b22f4 4 days ago 15.9 MB localhost/freebsd14-static 14.2-RELEASE-amd64 7876fe59dbb3 4 days ago 5.45 MB buildah images REPOSITORY TAG IMAGE ID CREATED SIZE localhost/freebsd14-minimal 14.2-RELEASE-amd64 c5f3e77557a9 4 days ago 35.1 MB localhost/freebsd14-dynamic 14.2-RELEASE-amd64 ebf7538b22f4 4 days ago 15.9 MB localhost/freebsd14-static 14.2-RELEASE-amd64 7876fe59dbb3 4 days ago 5.45 MB Анализируем слои, образующие образ minimal, который является надстройкой над образами static и dynamic: podman image tree localhost/freebsd14-minimal:14.2-RELEASE-amd64 Image ID: c5f3e77557a9 Tags: [localhost/freebsd14-minimal:14.2-RELEASE-amd64] Size: 35.07MB Image Layers ├── ID: cd53fb07fb66 Size: 5.449MB Top Layer of: [localhost/freebsd14-static:14.2-RELEASE-amd64] ├── ID: a01d37f7777b Size: 10.4MB Top Layer of: [localhost/freebsd14-dynamic:14.2-RELEASE-amd64] └── ID: 36b0c80ca1f7 Size: 19.21MB Top Layer of: [localhost/freebsd14-minimal:14.2-RELEASE-amd64] Сверяем контрольные суммы образов: podman inspect localhost/freebsd14-minimal:14.2-RELEASE-amd64 Запускаем /bin/sh в контейнере: podman run -it localhost/freebsd14-minimal:14.2-RELEASE-amd64 /bin/sh
  •  
    06.12.2024 , Источник: https://people.freebsd.org/~dch/pos...
    Ключи: podman, freebsd, container, chroot / Лицензия: CC-BY
    Раздел:    Корень / Безопасность / Помещение программ в chroot

    [an error occurred while processing this directive]

    [an error occurred while processing this directive]