linux - Docker 在 Alpine 上安装 Heroku CLI
问题描述
我正在尝试使用https://cli-assets.heroku.com/install.sh在 Linux Alpine 上安装 Heroku CLI,但在此脚本中有这样的注释:
# on alpine (and maybe others) the basic node binary does not work
# remove our node binary and fall back to whatever node is on the PATH
/usr/local/lib/heroku/bin/node -v || rm /usr/local/lib/heroku/bin/node
如果我删除了这一行,就会出现这样的错误:
/usr/local/bin/heroku: line 44: /usr/local/lib/heroku/bin/node: No such file or directory
这是完整的我的 Dockerfile:
FROM alpine
RUN apk update && \
apk add --no-cache bash && \
apk add --no-cache openjdk8 && \
apk add --no-cache java-cacerts && \
update-ca-certificates -f && \
apk add --no-cache sudo && \
echo "root:kuba" | chpasswd
USER root
RUN echo "kuba" | sudo -S apk add --no-cache curl
RUN echo "kuba" | sudo -S curl https://cli-assets.heroku.com/install.sh -o ~/heroku.sh
RUN sed -i 's#/usr/local/lib/heroku/bin/node -v || rm /usr/local/lib/heroku/bin/node# #g' ~/heroku.sh
RUN echo "kuba" | sudo -S sh ~/heroku.sh
# Setup JAVA_HOME -- useful for docker commandline
ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/
RUN export JAVA_HOME
# Add an app and listen on port
ADD target/endlessblow-server-1.0-SNAPSHOT.jar .
COPY endless-blow-91878452-firebase-adminsdk-dxv9z-0db48a2d01.json /
EXPOSE 8000
CMD java -jar endlessblow-server-1.0-SNAPSHOT.jar
那么我应该在这个脚本中用什么来替换它,因为我不知道?
解决方案
推荐阅读
- coq - 如何使用递减参数进行递归调用?
- c# - 如何进行统计;第二:如何写这样的文件
- kernel - Xorg-server、Mesa(OpenGL)和Linux内核的版本兼容关系
- maven - Jenkins 显示“无法执行目标 org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile (default-compile) 编译失败”
- ios - 您可以将两个 iOS 应用程序与同一个 Firestore 数据库一起使用吗?
- php - PHP Header Location 将 # 附加到 URL
- python - 如果他只出现在while循环中,如何修复索引错误(列表)
- java - Spring JPA过滤查询方法中的可选条件
- git - Jenkins + Ansible 用于多阶段应用程序
- android - Room:使用 Room 的关系实体,(一对多)使用条件而不是所有元素检索一个