Docker构build无法在Sinatra项目中安装pg gem
我已经审查了所有的post与类似的错误安装Postgres的pg
gem。
我的问题是独特的:我可以通过Gemfile和bundle install
成功地将Postgres添加到我的Sinatra Ruby项目中 – 但是在构buildDocker镜像时,安装pg
失败,出现以下错误:
ERROR: Error installing pg: ERROR: Failed to build gem native extension. current directory: /usr/local/bundle/gems/pg-0.19.0/ext /usr/local/bin/ruby -r ./siteconf20170113-7-ottv1k.rb extconf.rb checking for pg_config... no No pg_config... trying anyway. If building fails, please try again with --with-pg-config=/path/to/pg_config checking for libpq-fe.h... no Can't find the 'libpq-fe.h header *** extconf.rb failed ***
我已经尝试了类似的答案build议一切:
- Brew安装/卸载,
- gem install / uninstall指定两个文件的path:
pg_config
和libpq-fe.h
- 等等
由于我对Docker不太熟悉,有没有关于使用Docker安装数据库的问题?
任何帮助提前赞赏。 谢谢。
如果这仍是一个问题,请确保您的docker镜像安装了postgresql-client
, postgresql-dev
和build-essentials
。 包括像
... RUN apk update && apk upgrade RUN apk add postgresql-client build-dependencies postgresql-dev ...
在运行bundle安装之前在你的Dockerfile中。 postgresql-dev
软件包包含头文件和其他与dev相关的文件。