duk*_*ave 12 ruby-on-rails bundler docker
在Docker容器中使用Rails时, 几个 帖子(包括docker.com上的一个帖子)使用以下模式:
Dockerfile做ADD Gemfile和ADD Gemfile.lock,然后RUN bundle install.docker-compose run web rails new.由于我们RUN bundle install要构建图像,因此docker-compose build web在更新之后似乎是合适的Gemfile.
这可以在图像内部更新gemset ,但是:
该Gemfile.lock泊坞窗主机将不会被更新,以反映更改Gemfile.这是一个问题,因为:
Gemfile.lock 应该在您的存储库中,并且:
它应该与你的当前一致Gemfile.
所以:
如何Gemfile.lock在主机上更新,以便可以检入版本控制?
执行bundle内部run 会更新Gemfile.lock主机:
docker-compose run web bundle
Run Code Online (Sandbox Code Playgroud)
但是:您还 必须build再次使用该图像.
为了清楚起见,要运行的命令是:
docker-compose run web bundle
docker-compose up --build
Run Code Online (Sandbox Code Playgroud)
其中web是 Dockerized Rails 应用程序的名称。
| 归档时间: |
|
| 查看次数: |
4395 次 |
| 最近记录: |