如何解决部署到 OpenShift 时 rails 中的更新捆绑器警告?
How to solve the update bundler warning in rails when deploying to OpenShift?
我正在尝试在 openShift 上部署我的 rails 应用程序,一切正常,但它发出捆绑包更新警告。
Warning: the running version of Bundler (1.16.1) is older than the version that created the lockfile (1.16.6). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
我想更新 openshift bundler 或其他解决方法来解决这个问题。
通常,运行 过时的 bundler
不会导致任何问题,因此您应该能够安全地忽略警告。
但是,如果您出于某种原因必须更新 bundler
的版本,您应该在默认构建过程之前使用 .s2i/bin/assemble
脚本更新 bundler
的版本。所以类似于
#!/bin/bash -e
# The assemble script builds the application artifacts from source and
# places them into appropriate directories inside the image.
echo "---> Updating bundler gem..."
gem install bundler
# Execute the default S2I script
source ${STI_SCRIPTS_PATH}/assemble
应该可以解决问题。如果您将它作为可执行的 assemble
脚本添加到 .s2i/bin
目录中的存储库(在将其添加到您的存储库之前不要忘记 chmod +x assemble
定义),这应该会处理问题给你。
您还可以在 sclorg
GitHub 存储库中看到默认的 Ruby 2.5 assemble
脚本:https://github.com/sclorg/s2i-ruby-container/blob/master/2.5/s2i/bin/assemble。如果您好奇,只需根据需要更改 URL 中的版本。
我正在尝试在 openShift 上部署我的 rails 应用程序,一切正常,但它发出捆绑包更新警告。
Warning: the running version of Bundler (1.16.1) is older than the version that created the lockfile (1.16.6). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
我想更新 openshift bundler 或其他解决方法来解决这个问题。
通常,运行 过时的 bundler
不会导致任何问题,因此您应该能够安全地忽略警告。
但是,如果您出于某种原因必须更新 bundler
的版本,您应该在默认构建过程之前使用 .s2i/bin/assemble
脚本更新 bundler
的版本。所以类似于
#!/bin/bash -e
# The assemble script builds the application artifacts from source and
# places them into appropriate directories inside the image.
echo "---> Updating bundler gem..."
gem install bundler
# Execute the default S2I script
source ${STI_SCRIPTS_PATH}/assemble
应该可以解决问题。如果您将它作为可执行的 assemble
脚本添加到 .s2i/bin
目录中的存储库(在将其添加到您的存储库之前不要忘记 chmod +x assemble
定义),这应该会处理问题给你。
您还可以在 sclorg
GitHub 存储库中看到默认的 Ruby 2.5 assemble
脚本:https://github.com/sclorg/s2i-ruby-container/blob/master/2.5/s2i/bin/assemble。如果您好奇,只需根据需要更改 URL 中的版本。