Erstellen und verwalten Sie leichte Alpine -VMs auf macOS mit:
? Nahlose Portweiterleitung
Automatische Dateifreigabe
? Brückennetzwerk
AARCH64 und X86_64 Emulation

Das Ziel dieses Projekts ist es, MacOS -Benutzer zu ermöglichen:
macpine ist für die Verwendung auf modernem MacOS vorgesehen. Die Unterstützung älterer Versionen von MacOS und anderen OSS kann variieren.
brew install macpine # installs `alpine` command and `qemu` dependency automatically Laden Sie die neueste Binärveröffentlichung für Ihr System herunter und fügen Sie sie Ihrem $PATH hinzu, indem Sie sie in 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 hängt von QEMU> = 7.22.0 ab:
brew install qemu Sie können macpine auch über MacPorts installieren:
sudo port install macpine Erstellt aus der Quelle einen go und das Laufen erfordert 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/pathEine neue Instanz erstellen und beginnen:
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 defaultsZugangsinstanz über 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)Belegen Sie zusätzliche Instanzports an Host:
# 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 Instanzen können leicht für Sicherungen oder Freigaben als .tar.gz -Dateien verpackt werden:
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 Dies erstellt eine Datei cheerful-result.tar.gz , die importiert werden kann:
# alpine delete cheerful-result
alpine import cheerful-result.tar.gzWeitere Informationen finden Sie in allen Dokumenten:
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. Mehrere Instanzen in einem Befehl: Einige Befehle ( delete , edit , info , pause , publish , restart resume start , stop ) akzeptieren mehrere Instanznamen und wiederholt den Vorgang über jede einzigartige benannte Instanz einmal.
Tags: Verwenden von alpine tag können Instanzen markiert werden. Tags können in Multi-Instance alpine tag instance-name foobar Befehlen verwendet foobar (siehe oben) alpine start +foobar Beachten Sie, dass der Tag launchctl-autostart für automatische Startinstanzen bei der Anmeldung verwendet wird.
Shell AutoCompletion: Shell -Befehlsabschlussdateien (automatisch mit brew install macpine installiert) können mit alpine completion [bash|zsh|fish|powershell] . Weitere Informationen finden Sie in alpine completion -h oder der Abschlussdokumentation.