قم بإنشاء وإدارة VMS خفيفة الوزن على MacOS مع:
؟ إعادة توجيه منفذ سلس
مشاركة الملفات التلقائية
؟ شبكات سد
مضاهاة AARCH64 و X86_64

الهدف من هذا المشروع هو تمكين مستخدمي MacOS من:
macpine مخصص للاستخدام على MacOS الحديثة. قد يختلف دعم الإصدارات القديمة من MacOS وغيرها من أنظمة.
brew install macpine # installs `alpine` command and `qemu` dependency automatically قم بتنزيل أحدث إصدار ثنائي لنظامك وأضفه إلى $PATH الخاص بك عن طريق نقله إلى eg /usr/local/bin/ :
arch= " $( [ ` uname -m ` = ' x86_64 ' ] && echo ' amd64 ' || echo ' arm64 ' ) " # detect architecture
wget " https://github.com/beringresearch/macpine/releases/latest/download/alpine_darwin_ $arch "
mv " alpine_darwin_ $arch " alpine
sudo chmod +x alpine
sudo mv alpine /usr/local/bin/
# export PATH="$PATH:/usr/local/bin"يعتمد MacPine على QEMU> = 7.22.0:
brew install qemu يمكنك أيضًا تثبيت macpine عبر macports:
sudo port install macpine يتطلب البناء من المصدر برنامج التحويل البرمجي go العمل ، ويتطلب التشغيل qemu :
brew install go qemu
git clone https://github.com/beringresearch/macpine
cd macpine
make # compiles the project into a local bin/ directory
make install # installs binaries to /usr/local/bin
# PREFIX=/some/other/path make install installs to /some/other/pathلإنشاء وبدء مثيل جديد:
alpine launch # launches with default parameters
alpine launch -a aarch64 # create an aarch64 instance
alpine launch -d 10G -c 4 -m 2048 # create an instance with a 10GB disk, 4 cpus, and 2GB of RAM
alpine launch -h # view all configuration options and defaultsمثيل الوصول عبر SSH:
alpine launch -s 22 # launch an instance and expose SSH port to host port 22
alpine ssh instance-name # attach shell to instance (replace `instance-name` as appropriate)فضح منافذ مثيل إضافية للاستضافة:
# launch an instance, expose SSH to host port 2022 and forward host ports 8888 and 5432 to instance ports 8888 and 5432
alpine launch -s 2022 -p 8888,5432
# launch an instance, expose SSH to host port 8022, forward host port 8081 to instance port 8082, and forward
# host port 8083 to instance port 8083
alpine launch -s 8022 -p 8081:8082,8083
# launch an instance, expose SSH to host port 9022, forward host port 9091 UDP to instance port 9091 UDP,
# and forward host port 9092 UDP to instance port 9093 UDP
alpine launch -s 9023 -p 9091u,9092:9093u يمكن تعبئة الحالات بسهولة للنسخ الاحتياطي أو المشاركة كملفات .tar.gz :
alpine list
NAME STATUS SSH PORTS ARCH PID TAGS
cheerful-result Running 2022 aarch64 26568
glittering-swing Running 3022 x86_64 57206 emulation,intelalpine publish cheerful-result سيؤدي ذلك إلى إنشاء ملف cheerful-result.tar.gz والذي يمكن استيراده على النحو التالي:
# alpine delete cheerful-result
alpine import cheerful-result.tar.gzانظر جميع المستندات لمزيد من المعلومات:
Create, control, and connect to Alpine instances.
Usage:
alpine [command]
Available Commands:
completion Generate shell autocompletions.
delete Delete instances.
edit Edit instance configurations.
exec execute a command on an instance over ssh.
help Help about any command
import Imports an instance archived with `alpine publish`.
info Display information about instances.
launch Create and start an instance.
list List instances.
pause Pause instances.
publish Publish instances.
rename Rename an instance.
restart Stop and start instances.
resume Unpause instances.
ssh Attach an interactive shell to an instance via ssh.
start Start instances.
stop Stop instances.
tag Add or remove tags from an instance.
Flags:
-h, --help help for alpine
Use "alpine [command] --help" for more information about a command. مثيلات متعددة في أمر: بعض الأوامر ( delete ، edit ، info ، pause ، publish ، restart ، resume ، start ، stop ) تقبل أسماء مثيلات متعددة وستكرر العملية على كل مثيل مسمى فريد مرة واحدة.
العلامات: باستخدام alpine tag ، يمكن وضع علامة على مثيلات ؛ يمكن استخدام العلامات في أوامر متعددة الخطوط (انظر أعلاه) على سبيل المثال ، سيبدأ alpine start +foobar جميع الحالات التي تم وضع علامة عليها مع foobar مع alpine tag instance-name foobar . لاحظ أن TACK launchctl-autostart يستخدم في مثيلات بدء تشغيل تلقائي في تسجيل الدخول.
shell expletion: يمكن إنشاء ملفات إكمال الأوامر shell (مثبتة تلقائيًا باستخدام brew install macpine ) مع alpine completion [bash|zsh|fish|powershell] . انظر alpine completion -h أو وثائق الانتهاء لمزيد من المعلومات.