【发布时间】:2015-01-19 14:39:12
【问题描述】:
我有一个使用 Gemfile 中指定的 imagemagick 的 RoR 应用程序。我正在使用Docker's official rails image 使用以下 Dockerfile 构建我的图像:
FROM rails:onbuild
RUN apt-get install imagemagick
并得到以下错误:
Cant install RMagick 2.13.2. Cant find Magick-config in /usr/local/bundle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
现在,这可能是因为操作系统上缺少 imagemagic 包,即使我在 Dockerfile 中指定了它。所以我猜bundle install 命令是在我的RUN apt-get 命令发出之前发出的。
我的问题 - 使用这个基础镜像,有没有办法确保在捆绑之前安装 imagemagic?
我是否需要 fork 和更改基础镜像 Dockerfile 来实现这一点?
【问题讨论】:
-
在 Dockerfile 中,在任何安装之前,必须以
apt-get update开头。 -
这对当前存在 ONBUILD 场景的情况没有帮助
-
您可以修改容器,但不能修改图像。您可以创建另一个图像,然后执行
FROM rails:onbuildv2
标签: ruby-on-rails imagemagick docker