All Projects → dziemba → mobymac

dziemba / mobymac

Licence: MIT License
Automagically install Docker in a VirtualBox VM with super-fast NFS mounts.

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to mobymac

Babun Docker
Use Docker Toolbox with Babun (Cygwin) in Windows
Stars: ✭ 173 (+118.99%)
Mutual labels:  virtualbox, docker-machine
Docker Swarm
🐳🐳🐳 This repository is part of a blog series on Docker Swarm example using VirtualBox, OVH Openstack, Azure and Amazon Web Services AWS
Stars: ✭ 43 (-45.57%)
Mutual labels:  virtualbox, docker-machine
magento2-fast-vm
Optimal vagrant developer box for Magento2. Folders synced by nfs/rsync. This box includes Magento developer utilities.
Stars: ✭ 89 (+12.66%)
Mutual labels:  virtualbox, nfs
docker-machine-mac-nfs-mount
Docker machine Mac OS X nfs mount
Stars: ✭ 17 (-78.48%)
Mutual labels:  docker-machine, nfs
data-processing-pipeline
Real-Time Data Processing Pipeline & Visualization with Docker, Spark, Kafka and Cassandra
Stars: ✭ 79 (+0%)
Mutual labels:  docker-machine
k3s-homeops-ansible
Bootstrap a k3s cluster on top of Ubuntu 20.04
Stars: ✭ 47 (-40.51%)
Mutual labels:  virtualbox
vm-automation
VirtualBox automation using Python
Stars: ✭ 1 (-98.73%)
Mutual labels:  virtualbox
insaneworks-packer-template
CentOS 7-8 8Stream / AlmaLinux 8 / FreeBSD 12 - 13 x64 + VirtualBox / VMWare for Packer Template + FreeBSD 13 / AlmaLinux 9 + Parallels
Stars: ✭ 38 (-51.9%)
Mutual labels:  virtualbox
ansible-role-packer-debian
Ansible Role - Packer Debian/Ubuntu Configuration for Vagrant VirtualBox
Stars: ✭ 32 (-59.49%)
Mutual labels:  virtualbox
silverbox
Guide describing how to setup compact, silent and energy-efficient GNU/Linux home server
Stars: ✭ 42 (-46.84%)
Mutual labels:  nfs
hotsub
Command line tool to run batch jobs concurrently with ETL framework on AWS or other cloud computing resources
Stars: ✭ 29 (-63.29%)
Mutual labels:  docker-machine
phpvirtualbox4dsm
PhpVirtualbox package for Synology DSM
Stars: ✭ 28 (-64.56%)
Mutual labels:  virtualbox
docker-machine-driver-bhyve
Docker Machine driver for Bhyve
Stars: ✭ 27 (-65.82%)
Mutual labels:  docker-machine
tx2-flash
Guidance to flash JetPack to NVIDIA TX2 with Mac through a VirtualBox (VM)
Stars: ✭ 40 (-49.37%)
Mutual labels:  virtualbox
Lubuntu-VirtualBox
Lubuntu Bionic 18.04.5 Minimal and Full virtual machines. VirtualBox OVA files less than 400 MB and 1GB respectively
Stars: ✭ 25 (-68.35%)
Mutual labels:  virtualbox
remote-virtualbox
🍰 Little package to do simple things with VirtualBox remotely using it's SOAP API
Stars: ✭ 18 (-77.22%)
Mutual labels:  virtualbox
node-docker-machine
Programmatic API to Docker Machine.
Stars: ✭ 21 (-73.42%)
Mutual labels:  docker-machine
ansible-role-test-vms
DEPRECATED - A Vagrant configuration to test Ansible roles against a variety of Linux distributions.
Stars: ✭ 42 (-46.84%)
Mutual labels:  virtualbox
docker-workshop
Workshop on Docker, Containers and Golang
Stars: ✭ 20 (-74.68%)
Mutual labels:  docker-machine
packer-post-processor-virtualbox-to-hyperv
Packer plugin to create Hyper-V vagrant boxes from VirtualBox artifacts
Stars: ✭ 18 (-77.22%)
Mutual labels:  virtualbox

mobymac

Automagically install Docker in a VirtualBox VM with super-fast NFS mounts.

What does it do?

  • Uninstall Docker for Mac
  • Install Virtualbox
  • Install docker client binaries
  • Create a Vagrant VM with Docker installed
  • Automatically start VM on boot/login
  • Set up NFS mounts for VM
  • Set up docker environment in .bash_profile, .zprofile or fish.config (optional!)

Installation

  1. Clone this repo:
git clone https://github.com/dziemba/mobymac.git ~/.mobymac
cd ~/.mobymac

You can use a different path if you like. The directory needs to stay where it is though after running the installer, otherwise the VM won't boot the next time.

  1. Run the installer
# Install with default settings
# (4096MB RAM, 50GB data disk, automatic shell integration, VM IP: 192.168.42.2)
./install.sh

# Or run the installer with custom settings
# ./install.sh [VM memory in MB] [data disk size in GB] [shell integration] [VM IP subnet]
./install.sh 2048
./install.sh 2048 30
./install.sh 2048 30 manual
./install.sh 2048 30 manual 192.168.142
  • Shell integration can be either auto (default) or manual.
  • IP subnet must be in the form of a.b.c.
  • The host will use a.b.c.1, the VM will use a.b.c.2.

Updating / Reinstallation

It's the same as installing - just run it again!

Uninstalling

Run ./uninstall.sh in your mobymac checkout.

Known Limitations

  • Filesystem watching (inotify) does not work. Please use polling instead if possible. See #6
  • NFS mounts have less guarantees regarding FS consistency - in practise it should just work (tm)
  • Ports are not mapped to localhost - use 192.168.42.2 to access docker ports
  • Virtualbox (and thus mobymac) doesn't work on Apple Silicon / M1 Chips

Why?

Docker for Mac is an awesome project - use it if you can. Once the above issues have been resolved, this project will become obsolete.

Troubleshooting

Cannot connect to the Docker daemon at tcp://192.168.42.2:2376. Is the docker daemon running?

  1. Start the VM: VBoxManage startvm mobymac --type headless
  2. If that doesn't help, re-install mobymac.

Virtualbox Installation fails

  1. Uninstall virtualbox: brew cask uninstall virtualbox
  2. If the above step failed: reboot and try again
  3. Install virtualbox: brew cask install virtualbox
  4. If the above step failed: Open System Preferences -> Security & Privacy -> General, then allow the kernel extension. Reboot and try step 3 again.
  5. Run the mobymac installer (again).
  6. If that still fails, try the whole process one more time and reboot generously. Open an Issue on this project if you're still having trouble.

Creating the VM fails (VirtualBox error)

  1. If the above step failed: Open System Preferences -> Security & Privacy -> General, then allow the kernel extension.
  2. Reboot your computer.
  3. Run the mobymac installer (again).

exports: ... conflicts with existing export ...

  1. Open /etc/exports: sudo vim /etc/exports
  2. Delete all content
  3. Run the mobymac installer (again).

Permission denied @ apply2files - /usr/local/lib/docker/cli-plugins

  1. Run sudo rm -rf /usr/local/lib/docker
  2. Run the mobymac installer (again).

Other Problems

Please open an issue if you're stuck.

Contributing

Feel free to open issues about feature requests or create PRs.

License

MIT, see LICENSE

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].