How to use this box with Vagrant:

Vagrant.configure("2") do |config|
  config.vm.box = "ailispaw/rancheros"
end
vagrant init ailispaw/rancheros
vagrant up

This version was created almost 7 years ago.

RancherOS v0.3.3 + NFS - TLS

  • Based on RancherOS v0.3.3
  • rancheros.iso + 40 GB persistent disk
  • Docker v1.7.0
  • Support NFS synced folder
  • Support Docker provisioner
  • Disable TLS of User Docker for simplicity
  • Expose and forward the official IANA registered Docker port 2375
  • 21.4 MB

Cf.) https://github.com/ailispaw/rancheros-iso-box

Sample Vagrantfile

module VagrantPlugins
  module GuestLinux
    class Plugin < Vagrant.plugin("2")
      guest_capability("linux", "change_host_name") do
        Cap::ChangeHostName
      end

      guest_capability("linux", "configure_networks") do
        Cap::ConfigureNetworks
      end
    end
  end
end

Vagrant.configure(2) do |config|
  config.vm.define "rancheros"

  config.vm.box = "ailispaw/rancheros"

  config.vm.hostname = "rancheros"

  config.vm.network "private_network", ip: "192.168.33.10"

  config.vm.synced_folder ".", "/vagrant", type: "nfs", mount_options: ["nolock", "vers=3", "udp"]

  if Vagrant.has_plugin?("vagrant-triggers") then
    config.trigger.after [:up, :resume] do
      info "Adjusting datetime after suspend and resume."
      run_remote <<-EOT.prepend("\n")
        sudo system-docker stop ntp
        sudo ntpd -n -q -g -I eth0 > /dev/null
        date
        sudo system-docker start ntp
      EOT
    end
  end

  # Adjusting datetime before provisioning.
  config.vm.provision :shell, run: "always" do |sh|
    sh.inline = <<-EOT
      system-docker stop ntp
      ntpd -n -q -g -I eth0 > /dev/null
      date
      system-docker start ntp
    EOT
  end

  config.vm.provision :docker do |d|
    d.pull_images "busybox"
    d.run "simple-echo",
      image: "busybox",
      args: "-p 8080:8080",
      cmd: "nc -p 8080 -l -l -e echo hello world!"
  end

  config.vm.network :forwarded_port, guest: 8080, host: 8080
end

Known Issue

1 provider for this version.
  • virtualbox Externally hosted (github.com)

This version was created almost 7 years ago.

RancherOS v0.3.2 + NFS - TLS

  • Based on RancherOS v0.3.2
  • rancheros.iso + 40 GB persistent disk
  • Docker v1.7.0
  • Support NFS synced folder
  • Support Docker provisioner
  • Disable TLS of User Docker for simplicity
  • Expose and forward the official IANA registered Docker port 2375
  • 21.4 MB

Cf.) https://github.com/ailispaw/rancheros-iso-box

Sample Vagrantfile

module VagrantPlugins
  module GuestLinux
    class Plugin < Vagrant.plugin("2")
      guest_capability("linux", "change_host_name") do
        Cap::ChangeHostName
      end

      guest_capability("linux", "configure_networks") do
        Cap::ConfigureNetworks
      end
    end
  end
end

Vagrant.configure(2) do |config|
  config.vm.define "rancheros"

  config.vm.box = "ailispaw/rancheros"

  config.vm.hostname = "rancheros"

  config.vm.network "private_network", ip: "192.168.33.10"

  config.vm.synced_folder ".", "/vagrant", type: "nfs", mount_options: ["nolock", "vers=3", "udp"]

  if Vagrant.has_plugin?("vagrant-triggers") then
    config.trigger.after [:up, :resume] do
      info "Adjusting datetime after suspend and resume."
      run_remote <<-EOT.prepend("\n")
        sudo system-docker stop ntp
        sudo ntpd -n -q -g -I eth0 > /dev/null
        date
        sudo system-docker start ntp
      EOT
    end
  end

  # Adjusting datetime before provisioning.
  config.vm.provision :shell, run: "always" do |sh|
    sh.inline = <<-EOT
      system-docker stop ntp
      ntpd -n -q -g -I eth0 > /dev/null
      date
      system-docker start ntp
    EOT
  end

  config.vm.provision :docker do |d|
    d.pull_images "busybox"
    d.run "simple-echo",
      image: "busybox",
      args: "-p 8080:8080",
      cmd: "nc -p 8080 -l -l -e echo hello world!"
  end

  config.vm.network :forwarded_port, guest: 8080, host: 8080
end

Known Issue

1 provider for this version.
  • virtualbox Externally hosted (github.com)

This version was created about 7 years ago.

RancherOS v0.3.1 + NFS - TLS

  • Based on RancherOS v0.3.1
  • rancheros.iso + 40 GB persistent disk
  • Docker v1.6.2
  • Support NFS synced folder
  • Support Docker provisioner
  • Disable TLS of User Docker for simplicity
  • Expose and forward the official IANA registered Docker port 2375
  • 21.4 MB

Cf.) https://github.com/ailispaw/rancheros-iso-box

Sample Vagrantfile

module VagrantPlugins
  module GuestLinux
    class Plugin < Vagrant.plugin("2")
      guest_capability("linux", "change_host_name") do
        Cap::ChangeHostName
      end

      guest_capability("linux", "configure_networks") do
        Cap::ConfigureNetworks
      end
    end
  end
end

Vagrant.configure(2) do |config|
  config.vm.define "rancheros"

  config.vm.box = "ailispaw/rancheros"

  config.vm.hostname = "rancheros"

  config.vm.network "private_network", ip: "192.168.33.10"

  config.vm.synced_folder ".", "/vagrant", type: "nfs", mount_options: ["nolock", "vers=3", "udp"]

  if Vagrant.has_plugin?("vagrant-triggers") then
    config.trigger.after [:up, :resume] do
      info "Adjusting datetime after suspend and resume."
      run_remote <<-EOT.prepend("\n")
        sudo system-docker stop ntp
        sudo ntpd -n -q -g -I eth0 > /dev/null
        date
        sudo system-docker start ntp
      EOT
    end
  end

  # Adjusting datetime before provisioning.
  config.vm.provision :shell, run: "always" do |sh|
    sh.inline = <<-EOT
      system-docker stop ntp
      ntpd -n -q -g -I eth0 > /dev/null
      date
      system-docker start ntp
    EOT
  end

  config.vm.provision :docker do |d|
    d.pull_images "busybox"
    d.run "simple-echo",
      image: "busybox",
      args: "-p 8080:8080",
      cmd: "nc -p 8080 -l -l -e echo hello world!"
  end

  config.vm.network :forwarded_port, guest: 8080, host: 8080
end

Known Issue

1 provider for this version.
  • virtualbox Externally hosted (github.com)

This version was created about 7 years ago.

RancherOS v0.3.0 + NFS - TLS

  • Based on RancherOS v0.3.0
  • rancheros.iso + 40 GB persistent disk
  • Docker v1.5.0
  • Support NFS synced folder
  • Support Docker provisioner
  • Disable TLS of User Docker for simplicity
  • Expose and forward the official IANA registered Docker port 2375
  • 21.4 MB

Cf.) https://github.com/ailispaw/rancheros-iso-box
Cf.) https://github.com/ailispaw/rancheros-cluster

Sample Vagrantfile

module VagrantPlugins
  module GuestLinux
    class Plugin < Vagrant.plugin("2")
      guest_capability("linux", "change_host_name") do
        Cap::ChangeHostName
      end

      guest_capability("linux", "configure_networks") do
        Cap::ConfigureNetworks
      end
    end
  end
end

Vagrant.configure(2) do |config|
  config.vm.define "rancheros"

  config.vm.box = "ailispaw/rancheros"

  config.vm.hostname = "rancheros"

  config.vm.network "private_network", ip: "192.168.33.10"

  config.vm.synced_folder ".", "/vagrant", type: "nfs", mount_options: ["nolock", "vers=3", "udp"]

  if Vagrant.has_plugin?("vagrant-triggers") then
    config.trigger.after [:up, :resume] do
      info "Adjusting datetime after suspend and resume."
      run_remote <<-EOT.prepend("\n")
        sudo system-docker stop ntp
        sudo ntpd -n -q -g -I eth0 > /dev/null
        date
        sudo system-docker start ntp
      EOT
    end
  end

  # Adjusting datetime before provisioning.
  config.vm.provision :shell, run: "always" do |sh|
    sh.inline = <<-EOT
      system-docker stop ntp
      ntpd -n -q -g -I eth0 > /dev/null
      date
      system-docker start ntp
    EOT
  end

  config.vm.provision :docker do |d|
    d.pull_images "busybox"
    d.run "simple-echo",
      image: "busybox",
      args: "-p 8080:8080",
      cmd: "nc -p 8080 -l -l -e echo hello world!"
  end

  config.vm.network :forwarded_port, guest: 8080, host: 8080
end

Known Issue

1 provider for this version.
  • virtualbox Externally hosted (github.com)

This version was created over 7 years ago.

RancherOS v0.2.1 + NFS - TLS

  • Based on RancherOS v0.2.1
  • rancheros.iso + 40 GB persistent disk
  • Docker v1.5.0
  • Support NFS synced folder
  • Support Docker provisioner
  • Disable TLS of User Docker for simplicity
  • Expose and forward the official IANA registered Docker port 2375
  • 19.4 MB

Cf.) https://github.com/ailispaw/rancheros-iso-box
Cf.) https://github.com/ailispaw/rancheros-cluster

Sample Vagrantfile

module VagrantPlugins
  module GuestLinux
    class Plugin < Vagrant.plugin("2")
      guest_capability("linux", "change_host_name") do
        Cap::ChangeHostName
      end

      guest_capability("linux", "configure_networks") do
        Cap::ConfigureNetworks
      end
    end
  end
end

Vagrant.configure(2) do |config|
  config.vm.define "rancheros"

  config.vm.box = "ailispaw/rancheros"

  config.vm.hostname = "rancheros"

  config.vm.network "private_network", ip: "192.168.33.10"

  config.vm.synced_folder ".", "/vagrant", type: "nfs", mount_options: ["nolock", "vers=3", "udp"]

  if Vagrant.has_plugin?("vagrant-triggers") then
    config.trigger.after [:up, :resume] do
      info "Adjusting datetime after suspend and resume."
      run_remote <<-EOT.prepend("\n")
        sudo system-docker stop ntp
        sudo ntpd -n -q -g -I eth0 > /dev/null
        date
        sudo system-docker start ntp
      EOT
    end
  end

  # Adjusting datetime before provisioning.
  config.vm.provision :shell, run: "always" do |sh|
    sh.inline = <<-EOT
      system-docker stop ntp
      ntpd -n -q -g -I eth0 > /dev/null
      date
      system-docker start ntp
    EOT
  end

  config.vm.provision :docker do |d|
    d.pull_images "busybox"
    d.run "simple-echo",
      image: "busybox",
      args: "-p 8080:8080",
      cmd: "nc -p 8080 -l -l -e echo hello world!"
  end

  config.vm.network :forwarded_port, guest: 8080, host: 8080
end

Known Issue

1 provider for this version.
  • virtualbox Externally hosted (github.com)