پروژه کانتینر مجموعهای از تغییرات را اتخاذ کرده است که پشتیبانی runj در زمان اجرا را یکپارچه میکند و توانایی FreeBSD را برای استفاده از تصاویر کانتینر مبتنی بر لینوکس سازگار با OCI، مانند تصاویر Docker، باز میکند. نظرات تغییرات نمونه ای از راه اندازی موفق یک تصویر با Alpine Linux در FreeBSD را ارائه می دهد. $ 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 لینوکس" 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/-/ مسائل" Linux 3.17.0 FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC x86_64 Linux
با وجود وضعیت آزمایشی پروژه runj و مجموعه عملکرد محدود در حال حاضر، حتی در این شکل پروژه می تواند برای آزمایش های شخصی، ساده سازی مدل سازی راه حل ها (Proof Of Concept)، توسعه محلی، اجرای آزمایش ها قبل از استقرار در سیستم های ابری مفید باشد. و کارکرد کارایی برای مواردی که امکان سوئیچ به راه حل های آزمایش شده و صنعتی در پلتفرم های دیگر وجود ندارد، اما نیاز به کانتینرسازی رسیده است. برای کار کردن به زندان، jls، jexec و ps نیاز دارد.
همچنین شایان ذکر است که runj یک پروژه شخصی ساموئل کارپ، مهندس آمازون است که توزیع لینوکس Bottlerocket و فناوریهای جداسازی کانتینر را برای AWS توسعه میدهد، که همچنین عضو مستقل هیئت نظارت فنی پروژه OpenContainers است. پس از رساندن runj به سطح مورد نیاز، می توان از پروژه برای جایگزینی زمان اجرا استاندارد در سیستم های Docker و Kubernetes استفاده کرد و از FreeBSD به جای لینوکس برای اجرای کانتینرها استفاده کرد. از زمان اجرا OCI، دستورات در حال حاضر برای ایجاد، حذف، شروع، خاموش کردن اجباری، و ارزیابی وضعیت کانتینرها، و همچنین پیکربندی فرآیند، نقاط اتصال و نام میزبان پیادهسازی میشوند.
منبع: opennet.ru