rails 应用程序不会使用 hive_geoip2 gem 在 elastic beanstalk 上初始化
rails app wont initialize on elastic beanstalk with hive_geoip2 gem
我在 Elastic Beanstalk 上部署了一个 rails 应用程序。当我添加 gem hive_geoip2
它在开发中工作但是当我部署到 eb 时 rails 应用程序无法初始化并出现以下错误:
/opt/rubies/ruby-2.1.5/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/runtime.rb:76:in `require': libmaxminddb.so.0: cannot open shared object file: No such file or directory - /opt/rubies/ruby-2.1.5/lib/ruby/gems/2.1.0/extensions/x86_64-linux/2.1.0-static/hive_geoip2-0.1.2/hive_geoip2.so (LoadError)
EC2 实例上确实存在有问题的文件。如果我尝试启动 rails 控制台,我会遇到同样的错误。
非常欢迎任何有关调试此错误的方法的见解或建议。提前致谢。
编辑
这是相关的 eb 配置部分:
03_install_libmaxminddb:
cwd: /usr/local/src
command: git clone --recursive https://github.com/maxmind/libmaxminddb.git; cd libmaxminddb; ./bootstrap; ./configure; make; make install; ldconfig
我猜你的 ld.so.conf 中没有 /usr/local/lib
。作为 root,尝试 运行:
echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig
或者,您可以在 /etc/ld.so.conf.d/
中创建一个新文件。您应该确认 libmaxminddb.so.0
在 /usr/local/lib
中可用。
我在 Elastic Beanstalk 上部署了一个 rails 应用程序。当我添加 gem hive_geoip2
它在开发中工作但是当我部署到 eb 时 rails 应用程序无法初始化并出现以下错误:
/opt/rubies/ruby-2.1.5/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/runtime.rb:76:in `require': libmaxminddb.so.0: cannot open shared object file: No such file or directory - /opt/rubies/ruby-2.1.5/lib/ruby/gems/2.1.0/extensions/x86_64-linux/2.1.0-static/hive_geoip2-0.1.2/hive_geoip2.so (LoadError)
EC2 实例上确实存在有问题的文件。如果我尝试启动 rails 控制台,我会遇到同样的错误。
非常欢迎任何有关调试此错误的方法的见解或建议。提前致谢。
编辑 这是相关的 eb 配置部分:
03_install_libmaxminddb:
cwd: /usr/local/src
command: git clone --recursive https://github.com/maxmind/libmaxminddb.git; cd libmaxminddb; ./bootstrap; ./configure; make; make install; ldconfig
我猜你的 ld.so.conf 中没有 /usr/local/lib
。作为 root,尝试 运行:
echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig
或者,您可以在 /etc/ld.so.conf.d/
中创建一个新文件。您应该确认 libmaxminddb.so.0
在 /usr/local/lib
中可用。