如何在vagranted虚拟机上访问postgresql?

2023-12-28

我通过 Vagrant 虚拟机和 postgresql 进行制作,并希望将其用作我的 Rails 应用程序数据库。

我使用类似的 Vagrantfile:

Vagrant.configure("2") do |config|
  config.vm.network :private_network, ip: "192.168.33.18"
  config.vm.provision :chef_solo do |chef|
    # I take cookbook from https://github.com/opscode-cookbooks/postgresql
    chef.add_recipe "postgresql::server"
    chef.json = {
      postgresql: {
        config: {
          ssl: false,
          listen_addresses: '*'
        },
        password: {
          postgres: 'postgres'
        }
      }
    }
  end
end

Next I vagrant up并期待接下来database.yml将进行工作:

development:
  database: app_development
  adapter: postgresql
  host: '192.168.33.18'
  username: root

但这并没有发生。Rake 任务失败并出现错误:

could not connect to server: Connection refused
    Is the server running on host "192.168.33.18" and accepting
    TCP/IP connections on port 5432?

我看到端口实际上没有打开

$ nmap -p 5432 192.168.33.18

Starting Nmap 6.25 ( http://nmap.org ) at 2013-05-07 22:05 FET
Nmap scan report for 192.168.33.18
Host is up (0.00047s latency).
PORT     STATE  SERVICE
5432/tcp closed postgresql

我可以在虚拟机上看到一些postgres进程,并且vagrant输出没有任何错误,所以我相信postgres工作正常。

  932 postgres  20   0  126m 9.9m 8916 S    0  2.7   0:00.03 

postgres                                                                                                             
  941 postgres  20   0 97460 1348  192 S    0  0.4   0:00.00 postgres                                                                                                             
  944 postgres  20   0  126m 1728  548 S    0  0.5   0:00.06 postgres                                                                                                             
  945 postgres  20   0  126m 1488  316 S    0  0.4   0:00.05 postgres                                                                                                             
  946 postgres  20   0  126m 2768 1000 S    0  0.7   0:00.00 postgres                                                                                                             
  947 postgres  20   0 97456 1584  352 S    0  0.4   0:00.00 postgres  

如何设置 Vagrant 在我的 Rails 应用程序中的虚拟机上使用 db?

UPDATE my pg_hba.conf

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer

###########
# Other authentication configurations taken from chef node defaults:
###########

local   all             all                                     trust

host    all             all             0.0.0.0/0               md5

我向所有读者道歉,但问题出在我的疏忽上。虽然我指出listen_addresses: '*'在配置中,然后我意外重置了此配置,因此在最终配置中采用了默认值listen_addresses: 'localhost'价值。修复后此端口已打开。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在vagranted虚拟机上访问postgresql? 的相关文章

  • 分区表查询仍然扫描所有分区

    我有一个包含超过十亿条记录的表 为了提高性能 我将其分区为30个分区 最常见的查询有 id 在他们的 where 子句中 所以我决定对表进行分区id column 基本上 分区是这样创建的 CREATE TABLE foo 0 CHECK
  • Rails 3.1 引擎迁移不起作用

    我正在创建一个带有迁移的 Rails 3 1 引擎 rake db migration 在该引擎和主机应用程序内运行良好 但我需要将此引擎包含到另一个 Rails 引擎中 第二个引擎包含用于测试的虚拟应用程序 我将这一行添加到该虚拟应用程序
  • 如何在 Elixir 的 Ecto 查询中使用“case-when”?

    我有一个 SQL 查询 例如 SELECT SUM CASE WHEN
  • PDO 从 Postgres 获取小数秒

    当我查询日期时间字段时postgresql 9 6 用一个简单的 pdo 语句 PHP7 sql SELECT date FROM table stmt adapter gt createStatement sql stmt gt prep
  • 部署到 Heroku 时出现“rake 中止!堆栈级别太深”

    我的网站曾经运行正常 Heroku 预编译了资产和所有内容 现在 似乎不知从何而来 我开始在部署时收到此消息 Preparing app for Rails asset pipeline Running rake assets precom
  • :autosave 忽略了 has_many 关系——我错过了什么?

    我有两门课 class Collection lt ActiveRecord Base has many items autosave true end class Item lt ActiveRecord Base belongs to
  • Heroku 域名注册配置为雪松栈上的竹子

    我在 Cedar Stack 上运行时遇到 Heroku 的 DNS 配置问题 当我的自定义域具有正确的指向 CNAME 记录并正确配置为 Heroku 指令时 它一直认为我正在将 Cedar 堆栈路由到 Bamboo 事情是这样的 我最近
  • Rails Accepts_nested_attributes_for 子级在验证时没有设置父级

    验证时 我试图在子模型中访问我的父模型 我在 has one 上发现了一些关于反向属性的信息 但我的 Rails 2 3 5 无法识别它 因此它一定从未进入发行版 我不确定这是否正是我所需要的 我想根据父属性有条件地验证子属性 我的父模型已
  • 在 Rails 中实现友谊模型的最佳方式

    我想在我的应用程序中实现用户的朋友系统 所以我发现 Rails 空间解决方案非常好 其想法是创建两行 in the Friendships table 第一行为发送者邀请 第二行为接收者 用户之间的关系设置为has many像这样的协会 h
  • psycopg2 - 无密钥连接

    我正在尝试通过以下方式同时将项目插入到 postgres 表中ThreadedConnectionPool 但我不断得到psycopg2 pool PoolError trying to put unkeyed connection 不知道
  • Ruby on Rails(三)隐藏部分视图

    我正在开发 Ruby on Rails 3 Web 应用程序 我有一个名为User有一列名为role 我正在寻找对视图的这些部分具有 错误 角色的用户隐藏视图部分的最佳方法 例如我希望所有用户都能够看到用户index页面 但我只想要具有角色
  • 有没有办法修复 Elastic Beanstalk 中的 Gem::LoadError

    我对 Elastic Beanstalk 比较陌生 因此希望得到一些建议 将 RoR 应用程序部署到 EB Puma 使用在 64 位 Amazon Linux 上运行的 Ruby 2 6 后 当我 转到环境 链接时 它不会呈现我的应用程序
  • Ruby on Rails 是否会使来自外部域的 Graphql 控制器中的会话无效?

    我有一个在不同域上运行的 Rails graphql 服务 但会话变量似乎在graphql controller rb为零 当我在本地运行服务时 会话和上下文按预期工作 这是一个例子 in graphql controller def ex
  • 为什么私有辅助方法仍然可以在视图中访问?

    另一个 为什么会这样 的问题 我注意到私有辅助方法仍然可以在视图中访问 为什么 有没有办法防止这种情况 例如 当具有只能从另一个助手中调用的助手方法时 帮手是混合在一起的模块 http www ruby doc org docs Progr
  • Rails:与自身的多对多关系

    我在创建此关联时遇到问题 考虑模型 Entry 我希望条目有许多作为父母的条目 并且我希望条目有许多作为孩子的条目 我想通过一个我称为 关联 的模型来实现这种关系 所以这是我尝试的 移民 class CreateAssociations l
  • nginx 504 网关超时

    我正在 nginx 上使用 phusion passenger 运行 Rails3 0 7 项目 当我正在做 ajax 时 大约需要 15 分钟来处理 调用 ajax 10 分钟后 它会跳出一个 Firebug 错误 显示 504 Gate
  • 为 has_many 或 habtm 动态创建 after_add 和 after_remove 回调?

    有没有办法动态添加after add and after remove回调现有的has many or has and belongs to many关系 例如 假设我有模型User Thing 和一个连接模型UserThingRelati
  • Capistrano + Thin + nginx 不允许用户使用 sudo howto?

    我有一个这样的场景 我想使用 capistrano 部署 ruby on Rails 应用程序 Web 应用程序位于瘦集群上 配置文件存储在 etc thin 下 etc init d thin 中还有一个初始化脚本 因此每当我的服务器需要
  • 使用 Squeal 时可以有条件地在 where 块中添加子句吗?

    首先 我使用 Rails v3 2 9 和 Squeel 1 0 13 这就是我想要做的 我想使用三项身份信息中的任何一项来搜索客户 姓名 出生日期 dob 和社会保险号码 sin 结果集必须包括具有任何标识符 条件的 OR 的任何记录 我
  • 使用 DataMapper 而不是 ActiveRecord [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi

随机推荐