为了使用Rails,将yarn添加到ruby-onbuild中并构建Dockerfile
以下是用Dockerfile示例来在Docker镜像ruby:2.4-onbuild中运行Rails 5.1的样本。由于ruby-onbuild中缺少关于添加yarn的信息,因此我写下来供参考。
点数
-
- Ruby公式图像以Debian为基础。
-
- 由于Yarn需要的Node.js版本不足,所以添加了当前最新的Node.js 9版本。
- 添加了Yarn存储库并进行安装。
如果依赖关系不完整,将会出现构建错误E: 无法找到软件包yarn等。
结果就是这种感觉。
# WORKDIR = /usr/src/app
FROM ruby:2.4-onbuild
RUN bundle config --delete frozen \
&& apt-get update -qq && apt-get install -y build-essential \
&& curl -sL https://deb.nodesource.com/setup_9.x | bash - \
&& apt-get install -y nodejs \
&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
&& echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \
&& apt-get update && apt-get install yarn \
&& rm -rf /var/lib/apt/lists/*
请参照以下内容。
无法从docker镜像ruby:2.3-slim安装yarn · Issue #2888 · yarnpkg/yarn
https://github.com/yarnpkg/yarn/issues/2888
安装 | Yarn
https://yarnpkg.com/lang/zh-Hans/docs/install/
通过软件包管理器安装Node.js | Node.js
https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions