В проект containerd принят набор изменений, интегрирующий поддержку runtime runj и открывающий возможность использования во FreeBSD OCI-совместимых образов контейнеров на базе Linux, например образов Docker. В комментариях к изменениям приведён пример успешного запуска во FreeBSD образа с Alpine Linux.

       $ sudo ctr run --rm --runtime wtf.sbk.runj.v1 --tty --snapshotter zfs docker.io/library/alpine:latest test sh -c 'cat /etc/os-release &&    uname -a'

NAME="Alpine Linux"   
ID=alpine   
VERSION_ID=3.16.0   
PRETTY_NAME="Alpine Linux v3.16"
HOME_URL="https://alpinelinux.org/" 
BUG_REPORT_URL="https://gitlab.alpinelinux.org/alpine/aports/-/issues"   Linux 3.17.0 FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212    GENERIC x86_64 Linux

Несмотря на экспериментальный статус проекта runj и ограниченный набор функциональности на текущий момент, даже в таком виде проект может быть полезен для личных экспериментов, упрощения моделирования решений (Proof Of Concept), локальной разработки, запуска тестов перед развёртыванием в облачные системы и проработки работоспособности для случаев, когда нет возможности перейти на оттестированные и промышленные решения на других платформах, но потребность в контейнеризации назрела. Для работы требуются установленные jail, jls, jexec и ps.

Отдельно стоит отметить, что runj - личный проект Самуэля Карпа (Samuel Karp), инженера из компании Amazon, занимающегося разработкой Linux-дистрибутива Bottlerocket и технологий контейнерной изоляции для AWS, который также является независимым участником Technical Oversight Board проекта OpenContainers. После доведения runj до необходимого уровня проект можно будет применять для замены штатного runtime в системах Docker и Kubernetes, используя для запуска контейнеров FreeBSD вместо Linux. Из OCI runtime в настоящее время реализованы команды для создания, удаления, запуска, принудительного завершения и оценки состояния контейнеров, а также настройки процесса, точек монтирования и имени хоста.

// cc-by opennet.ru
// converted with crypt’s opennet autoreposter

  • cocucka
    link
    fedilink
    arrow-up
    0
    ·
    4 years ago

    Если по чесноку, то на фряхе не хватает системы а-ля WSL для бесшовной интеграции с линуксом. Сейчас надо либо пересобирать софт под фряху, если возможно, либо пердолиться с линуксятором.

    • cryptOP
      link
      fedilink
      arrow-up
      0
      ·
      4 years ago

      WSL1 или WSL2?

      линуксолятор - это как раз WSL1 и есть. и он как раз очень неплох. проинсталируй любую ubuntu в chroot, смени sysctl переменную compat.linux.emul_path: /compat/linux и вот оно.

      ограничения в первую очередь связаны с udev вещами.

      • cocucka
        link
        fedilink
        arrow-up
        0
        ·
        4 years ago

        Что-то среднее, ещё не вм, но и не транслятор. Что-то типа linux jail с обёрткой для бесшовной интеграции.

        Транслятор имхо всегда outdated, даже мелкомягкие не осилили поддержку в актуальном состоянии.

        • cryptOP
          link
          fedilink
          arrow-up
          0
          ·
          4 years ago

          ты смотришь на это, как программист, - вы всегда любите самые последние бирюльки. мне как админу больше импонирует, что линуксолятор обеспечивает набор стандартных интерфейсов из RHEL, достаточный для запуска софта. все, что привыкло использовать непосредственный доступ к устройствам, обламывается.

        • cryptOP
          link
          fedilink
          arrow-up
          0
          ·
          4 years ago

          FreeBSD просто недостаточно мейнстримна, чтобы предлагать такие законченные решения.

          даже мелкомягкие не осилили поддержку в актуальном состоянии.

          для них это просто не приоритет. все они могут, просто не хотят.

          Что-то типа linux jail с обёрткой для бесшовной интеграции.

          как раз linux jail - это и есть обертка вокруг линуксолятора. а линуксолятор обеспечивает бесшовную интеграцию, но доступ к девайсам было некому обхачивать.

        • cryptOP
          link
          fedilink
          arrow-up
          0
          ·
          4 years ago

          если уж даже linux java можно запускать во FreeBSD, то это вин.

    • cryptOP
      link
      fedilink
      arrow-up
      0
      ·
      4 years ago

      к вечеру сложно понять, в чем суть этого проекта. кажется, это какая надстройка над штатным слоем совместимости с Linux для запуска docker, видимо.

      • sorrow
        link
        fedilink
        arrow-up
        0
        ·
        4 years ago

        Скорее обёртка над jail’ами для совместимости с OCI.

    • cryptOP
      link
      fedilink
      arrow-up
      0
      ·
      4 years ago

      а что ты пытаешься запускать для бесшовной интеграции с линуксом?

      либо пердолиться с линуксятором

      он же “просто работает”.