Windows 如何将我的本地虚拟机导出到我公司服务器上的虚拟机?

Windows 如何将我的本地虚拟机导出到我公司服务器上的虚拟机?,windows,vagrant,ubuntu-14.04,virtualbox,Windows,Vagrant,Ubuntu 14.04,Virtualbox,我有一个虚拟机与流浪者在本地工作,但我必须把它放在该公司的服务器上,该公司让我访问一个虚拟机。我可以访问这个虚拟机感谢SSH,但如何转移我的本地流浪虚拟机代替 我在windows上工作,虚拟机在Ubuntu上 谢谢 流浪者档案: # -*- mode: ruby -*- # vi: set ft=ruby : require "./source.rb" ROOT_PATH = File.dirname(__FILE__) VAGRANTFILE_API_VER

我有一个虚拟机与流浪者在本地工作,但我必须把它放在该公司的服务器上,该公司让我访问一个虚拟机。我可以访问这个虚拟机感谢SSH,但如何转移我的本地流浪虚拟机代替

我在windows上工作,虚拟机在Ubuntu上

谢谢

流浪者档案:

    # -*- mode: ruby -*-
    # vi: set ft=ruby :
    require "./source.rb"

    ROOT_PATH = File.dirname(__FILE__)

VAGRANTFILE_API_VERSION = "2"

def configure_extra(config)
end

def configure(config)
  config.vm.box = "trusty64"
  config.vm.box_url = "https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box"

  # Disable automatic box update checking. If you disable this, then
  # boxes will only be checked for updates when the user runs
  # `vagrant box outdated`. This is not recommended.
  # config.vm.box_check_update = false

  # Create a forwarded port mapping which allows access to a specific port
  # within the machine from a port on the host machine. In the example below,
  # accessing "localhost:8080" will access port 80 on the guest machine.
  config.vm.network :forwarded_port, host: 8000, guest: 8000
  config.vm.network :forwarded_port, host: 9001, guest: 9001

  # Create a private network, which allows host-only access to the machine
  # using a specific IP.
  # config.vm.network "private_network", ip: "192.168.33.10"

  # Create a public network, which generally matched to bridged network.
  # Bridged networks make the machine appear as another physical device on
  # your network.
  # config.vm.network "public_network"

  # If true, then any SSH connections made will enable agent forwarding.
  # Default value: false
  config.ssh.forward_agent = true

  # Share an additional folder to the guest VM. The first argument is
  # the path on the host to the actual folder. The second argument is
  # the path on the guest to mount the folder. And the optional third
  # argument is a set of non-required options.
  config.vm.synced_folder "./data", "/home/vagrant/data"

  # Provider-specific configuration so you can fine-tune various
  # backing providers for Vagrant. These expose provider-specific options.
  config.vm.provider "virtualbox" do |vb|
    # Boot with headless mode
    vb.gui = false

    host = RbConfig::CONFIG['host_os']

    # Giving a quarter of system memory to VM and access to all available cpu cores
    if host =~ /darwin/
      cpus = `sysctl -n hw.ncpu`.to_i
      # sysctl returns Bytes, converting to MB...
      mem = `sysctl -n hw.memsize`.to_i / 1024 / 1024 / 4
    elsif host =~ /linux/
      cpus = `nproc`.to_i
      # meminfo returns KB, converting to MB...
      mem = `grep 'MemTotal' /proc/meminfo | sed -e 's/MemTotal://' -e 's/ kB//'`.to_i / 1024 / 4
    else
      # hardcoding values for windows...
      cpus = 2
      mem = 1024
    end

    vb.customize ["modifyvm", :id, "--memory", mem]
    vb.customize ["modifyvm", :id, "--cpus", cpus]
  end

  # Provisioning
  config.vm.provision "shell" do |shell|
    vagrant_shell_scripts_configure(
      shell,
      File.join(ROOT_PATH, "scripts"),
      "provision.sh",
      {}
    )
  end
end

# Look for a Vagrantfile.local to load
local_vagrantfile = "#{__FILE__}.local"
if File.exists?(local_vagrantfile)
  eval File.read(local_vagrantfile)
end

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  configure config
  configure_extra config
end

Vagrant本身在本地准备VM(网络、IP等),但这已经在贵公司提供的VM中配置。我通常做的是直接在外部(或真实)VM中运行脚本(例如sh)。您还可以在VM中安装一些资源调配工具(例如puppet),并运行文件中包含的脚本。如果您可以在此处发布Vagrant文件,这将非常有帮助。

Vagrant本身在本地准备VM(网络、IP等),但这已在您公司提供的VM中配置。我通常做的是直接在外部(或真实)VM中运行脚本(例如sh)。您还可以在VM中安装一些资源调配工具(例如puppet),并运行文件中包含的脚本。如果您可以在这里发布vagrant文件,这将非常有帮助。

谢谢,因此我必须将我的vagrant文件导入到真正的虚拟机上?我不确定我是否理解,我的项目在我本地虚拟机的taiga vagrant文件中。您认为在真正的虚拟机上导入此文件+vagrant文件有效吗?不,vagrant文件用于在VirtualBox中创建本地虚拟机。正如我前面提到的,您需要在创建的外部VM中直接执行shell命令。这是Vagranfile->File.join(ROOT_路径,“scripts”),“provision.sh”中的关键部分,我想其中包括安装taiga的步骤。将scripts/provision.sh文件复制到新VM并执行它(可能需要一些预配置)谢谢,所以我必须将我的Vagran文件导入到真正的VM上?我不确定我是否理解,我的项目在我本地VM的taiga vagrant文件中。您认为在真正的虚拟机上导入此文件+vagrant文件有效吗?不,vagrant文件用于在VirtualBox中创建本地虚拟机。正如我前面提到的,您需要在创建的外部VM中直接执行shell命令。这是Vagranfile->File.join(ROOT_路径,“scripts”),“provision.sh”中的关键部分,我想其中包括安装taiga的步骤。将scripts/provision.sh文件复制到新VM并执行它(可能需要一些预配置)