docker - 在任何来源中都找不到 ast-2.3.0
问题描述
Dockerfile 已弃用。在这里,我正在安装 bundle install 并创建一个新目录 /bundle 来安装 bundle。在将此映像作为容器运行时,我将当前目录挂载到 /code,即 WORKDIR,以便所有 rakefile、Gemfile、GEMFile.lock 都可以在其中使用。但是每次我尝试启动容器时,ENTRYPOINT 命令“bundle exec rake syntax”都会失败。
FROM puppet/puppet-agent-alpine
RUN mkdir /code && \
mkdir /bundle
WORKDIR /code
RUN apk update && apk add git
COPY Gemfile Gemfile.lock /code/
RUN gem install --no-ri --no-rdoc bundler && \
bundle install --without linters --path /bundle && \
gem cleanup
ENTRYPOINT ["bundle", "exec","rake", "syntax"]
COPY docker/syntax/Dockerfile /Dockerfile
我尝试删除 Gemfile.lock 没有运气。当我在运行时覆盖入口点时,我可以登录到容器并手动运行入口点命令,它是 bundle exec rake 语法。它仍然给我同样的错误。我添加了 /bundle 的路径。但是,如果我在登录容器后再次手动执行捆绑安装,则此命令将成功运行。
任何帮助,将不胜感激!
解决方案
尝试:
$ docker-compose build
图像变得陈旧并且不会自动重建。
推荐阅读
- ruby - ruby 多行语句返回与内联语句不同的值
- flutter - Dart/Flutter 中的 onPressed() 属性中的 If Else 条件问题
- node.js - Mongoose:在预保存挂钩中更新文档
- ruby - 加载 RubyGems 插件时出错。无法加载此类文件
- python - 无法在 Visual Studio Code 中调试 Django 单元测试
- java - 如何在 Quarkus 上使用 OpenId 实现 websocket/sse?
- rest - API调用多个API时部分响应的Http状态
- azure - How to get ResourceId as output for VM when using copyIndex
- python - graphviz.Source() 中的 re.sub 是什么
- c++ - std::strong_ordering 如何仅适用于零?