使用 RubyMine 通过 Vagrant 连接到数据库

Connect to DB through Vagrant using RubyMine

我刚刚开始从事一个 ruby 项目,该项目是通过 Vagrant 建立的。我已经成功地让远程解释器工作了,但是我在连接到数据库时遇到了问题。

这是我的 Vagrantfile:

# This Vagrantfile is for development use only.
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "markusproject/ubuntu"

  # Allow instance to see project folder.
  # Warning: This may cause problems with your Vagrant box!
  #          Enable at your own risk.
  # config.vm.synced_folder ".", "/home/vagrant/Markus"

  # Access the server running on port 3000 on the host on port 42069.
  # config.vm.network "forwarded_port", guest: 3000, host: 42069
  config.vm.network :private_network, ip: '192.168.50.50'
  config.vm.synced_folder '.', '/home/vagrant/Markus', nfs: true

  config.vm.provider "virtualbox" do |vb|
    # Uncomment the following line if you want a GUI.
    # vb.gui = true
    vb.name = "markus"
  end
end

我已将 VM 设置为 use NFS。这是 vagrant ssh-config 的输出:

Host default
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile /Users/paymahn/.vagrant.d/insecure_private_key
  IdentitiesOnly yes
  LogLevel FATAL

我保留了数据库连接的默认设置,但尝试了几种为连接设置 SSH 隧道的变体。

这些变体包括:

  1. 将代理主机设置为 127.0.0.1
  2. 将端口设置为 2222
  3. 将代理主机设置为 192.168.50.50
  4. 将端口设置为 22

当我测试连接时,所有变化都导致连接失败。非常感谢任何有关设置此配置的帮助!

好吧...感谢 this guy

我弄明白了

最终对话框如下所示:

除了我将数据库名称从 markus_development 更改为 markus_test

之外,我对 test 数据库做了完全相同的操作