| Travis CI | Pelepasan |
|---|---|
Plugin Driver Libmachine untuk Xhyve Native OS X Hypervisor
Cabang Master diwarisi dari Nathanleclaire/Docker-Machine-Xhyve. Terima kasih @nathanleClaire :)
Jika Anda memiliki masalah atau permintaan tarik, diinginkan untuk diposting ke repositori ini.

Docker-Machine-driver-xhyve menggunakan model plugin libmachine.
Harap jangan memposting masalah repositori ini ke Docker/Machine, Kubernetes/Minikube dan Minishift/Minishift
Ini akan mengganggu pengembangan mesin Docker, Minikube atau Minishift.
Jika Anda juga meragukan masalah, silakan posting ke masalah repositori ini.
Docker-Machine
Minikube
Minishift
Gunakan Homebrew/Brew:
$ brew install docker-machine-driver-xhyve
# docker-machine-driver-xhyve need root owner and uid
$ sudo chown root:wheel $( brew --prefix ) /opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve
$ sudo chmod u+s $( brew --prefix ) /opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve Gunakan go with make :
Jika Anda ingin mendukung format gambar Disk QCOW2, perlu instal Mirage/OCAML-QCOW. Lihat Docker/Hyperkit#Building.
# Need Go 1.5 vendoring support
$ export GO15VENDOREXPERIMENT=1
$ go get -u -d github.com/zchee/docker-machine-driver-xhyve
$ cd $GOPATH /src/github.com/zchee/docker-machine-driver-xhyve
# Install qcow-format for qcow2 disk image format
$ brew install opam libev
$ opam init
$ eval ` opam config env `
$ opam install uri qcow-format io-page.1.6.1 conf-libev
# Install docker-machine-driver-xhyve binary into /usr/local/bin
$ make install
# docker-machine-driver-xhyve need root owner and uid
$ sudo chown root:wheel /usr/local/bin/docker-machine-driver-xhyve
$ sudo chmod u+s /usr/local/bin/docker-machine-driver-xhyveKami menggunakan Glide untuk manajemen ketergantungan.
$ go get github.com/Masterminds/glide Ini akan menginstal Biner Glide ke $GOPATH/bin .
Memperbarui dependensi
Jika pekerjaan Anda memerlukan perubahan pada dependensi, Anda perlu memperbarui konfigurasi Glide.
glide.lock dan buat ulang direktori vendor dengan menjalankan make vendor . Glide akan mengenali bahwa tidak ada file kunci dan menghitung ulang dependensi yang diperlukan.glide.yaml dan glide.lock yang diperbarui. Catatan: Dalam beberapa kasus, cache glide yang terletak di bawah ~/.glide/cache bisa rusak. Jika Anda melihat kesalahan meluncur selama make vendor , Anda dapat menghapus cache glide melalui glide cc .
| Nama bendera | Variabel Lingkungan | Jenis | Bawaan |
|---|---|---|---|
--xhyve-boot2docker-url | XHYVE_BOOT2DOCKER_URL | rangkaian | $HOME/.docker/machine/cache/boot2docker.iso |
--xhyve-cpu-count | XHYVE_CPU_COUNT | int | 1 |
--xhyve-memory-size | XHYVE_MEMORY_SIZE | int | 1024 |
--xhyve-disk-size | XHYVE_DISK_SIZE | int | 20000 |
--xhyve-uuid | XHYVE_UUID | int | '' |
--xhyve-boot-cmd | XHYVE_BOOT_CMD | rangkaian | Lihat otomatis_script.md |
--xhyve-boot-kernel | XHYVE_BOOT_KERNEL | rangkaian | '' |
--xhyve-boot-initrd | XHYVE_BOOT_INITRD | rangkaian | '' |
--xhyve-qcow2 | XHYVE_QCOW2 | bool | false |
--xhyve-virtio-9p | XHYVE_VIRTIO_9P | bool | false |
--xhyve-experimental-nfs-share | XHYVE_EXPERIMENTAL_NFS_SHARE | rangkaian | Jalur ke folder host yang akan dibagikan di dalam tamu |
--xhyve-experimental-nfs-share-root | XHYVE_EXPERIMENTAL_NFS_SHARE_ROOT | rangkaian | jalur root di mana saham NFS akan dipasang |
--xhyve-boot2docker-url URL (jalur) dari gambar Boot2Docker.
Secara default, gunakan jalur file ISO yang di -cache.
--xhyve-cpu-count Jumlah CPU untuk menggunakan Buat VM.
Jika set -1 , gunakan CPU logis yang dapat digunakan dengan proses saat ini.
--xhyve-memory-sizeUkuran memori untuk tamu.
--xhyve-disk-sizeUkuran disk untuk tamu (MB).
--xhyve-uuid UUID untuk mesin.
Secara default, buat dan gunakan UUID acak. Lihat xhyve/uuid.go
--xhyve-boot-cmd Mem -boot perintah xhyve kexec.
Secara default, gunakan
loglevel=3 user=docker console=ttyS0 console=tty0 noembed nomodeset norestore waitusb=10 base host=boot2docker
--xhyve-boot-kernel Booting Path File Kernel.
Secara default, secara otomatis akan mem -parsing jalur file menggunakan (vmlinu[xz]|bzImage)[d]* .
--xhyve-boot-initrd Booting path file initrd.
Secara default, secara otomatis akan mem -parsing initrd berisi jalur file.
--xhyve-qcow2 Gunakan format disk qcow2 .
Jika Anda menggunakan minikube, CONFIG_VIRTIO_BLK=y dukungan disertakan dalam minikube-iso pada versi v0.0.6.
--xhyve-rawdiskGunakan format 'disk mentah' sederhana dan driver virtio-blk untuk penyimpanan. Ini mungkin secara signifikan lebih cepat untuk aplikasi intensif I/O, dengan potensi biaya daya tahan data.
--xhyve-virtio-9p Aktifkan folder virtio-9p berbagi.
Jika Anda menggunakan Docker-Machine, CONFIG_NET_9P=y Dukungan disertakan dalam Boot2Docker pada versi v1.10.2.
--xhyve-experimental-nfs-share /path/to/host/folder Bagikan path/to/host/folder di dalam tamu di jalur yang ditentukan oleh --xhyve-experimental-nfs-share-root (yang sendiri default ke /xhyve-nfsshares ).
Dapat ditentukan beberapa kali
--xhyve-experimental-nfs-share-root /path Secara default, saham NFS akan dipasang di tamu di /xhyve-nfsshares .
Anda dapat mengubah default ini dengan menentukan --xhyve-experimental-nfs-share-root /path , /path menjadi jalur ke root
Saat ini, docker-machine-driver-xhyve tidak membersihkan dhcpd_leases .
menyukai,
# Running xhyve vm. for example, assign 192.168.64.1
$ docker-machine create --driver xhyve xhyve-test
|
# Send ACPI signal(poweroff) signal over the ssh
$ docker-machine rm xhyve-test
|
# Re-create xhyve vm, will assign 192.168.64.2
docker-machine create --driver xhyve xhyve-test Itu akan ditugaskan ke 192.168.64. 2 . Jika membuat VM lain, ditugaskan ke 192.168.64. 3 .
Tetapi 192.168.64. 1 tidak menggunakan siapa pun.
vmnet.framework tampaknya telah memutuskan IP berdasarkan file di bawah ini
/var/db/dhcpd_leases/Library/Preferences/SystemConfiguration/com.apple.vmnet.plist Jadi, jika Anda ingin mengatur ulang database IP, silakan hapus secara manual. tapi sangat berisiko .
Perhatikan bahwa vmnet.framework Rentang alamat bersih bersama adalah 192.168.64.1 ~ 192.168.64.255 . Anda dapat menghasilkan 255 vm.
Saya akan menerapkan proses pembersihan setelah memahami vmnet.framework .
Mac OS X 10.11.4 Build 15E27e memiliki bug hypervisor.framework .
Ini bug Apple.
Tapi, Apple telah diperbaiki build 15E33e .
Jika Anda meluncurkan docker-machine-driver-xhyve on build 15e27e, akan ditampilkan
open : no such file or directory dan, dalam xhyve asli,
hv_vm_create failedMelihat
Saya sangat cemas apakah pengguna lain (kecuali saya) dapat meluncurkan xhyve.
Jadi, jika Anda dapat meluncurkan Xhyve menggunakan Docker-Machine-Driver-Xhyve, dapatkah Anda memposting laporan ke utas masalah ini?
#18
Jika macOS diluncurkan oleh Vagrant , dapat dibangun, tetapi tidak akan dapat meluncurkan hypervisor.
Penyebabnya mungkin karena backend VM (VirtualBox, VMware, paralel ...) untuk menyembunyikan informasi CPU.
Dalam kasus VMware,
$ system_profiler SPHardwareDataType
system_profiler[458:1817] platformPluginDictionary: Can ' t get X86PlatformPlugin, return value 0
system_profiler[458:1817] platformPluginDictionary: Can ' t get X86PlatformPlugin, return value 0
Hardware:
Hardware Overview:
Model Name: Mac
Model Identifier: VMware7,1
// Where is " Processor Name: " field ?
Processor Speed: 2.19 GHz
Number of Processors: 1
Total Number of Cores: 1
L2 Cache: 256 KB
L3 Cache: 6 MB
Memory: 2 GB
Boot ROM Version: VMW71.00V.0.B64.1505060256
SMC Version (system): 1.16f8
Serial Number (system): ************
Hardware UUID: ******** - **** - **** - **** - ************
$ git clone https://github.com/mist64/xhyve && cd xhyve
$ make
$ ./xhyverun.sh
vmx_init: processor not supported by Hypervisor.framework
Unable to create VM (-85377018)