【问题标题】:Unable to push clojure project on heroku with dockerfile无法使用 dockerfile 在 heroku 上推送 clojure 项目
【发布时间】:2020-06-22 21:40:33
【问题描述】:

我有以下 Dockerfile:

# We will use Ubuntu for our image
FROM ubuntu:latest

# Updating Ubuntu packages

ARG CLOJURE_TOOLS_VERSION=1.10.1.507


RUN apt-get -qq update && apt-get -qq -y install curl wget bzip2 openjdk-8-jdk-headless \
    && curl -sSL https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -o /tmp/miniconda.sh \
    #    && curl -sSL https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh -o /tmp/miniconda.sh \
    && bash /tmp/miniconda.sh -bfp /usr/local \
    && rm -rf /tmp/miniconda.sh \
    && conda install -y python=3 \
    && conda update conda \
    && curl -o install-clojure https://download.clojure.org/install/linux-install-${CLOJURE_TOOLS_VERSION}.sh \
    && chmod +x install-clojure \
    && ./install-clojure && rm install-clojure \
    # no need to install lein 
    && wget https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein \
    && chmod a+x lein \
    && mv lein /usr/bin \


    && apt-get -qq -y autoremove \
    && apt-get autoclean \
    && rm -rf /var/lib/apt/lists/* /var/log/dpkg.log \
    && conda clean --all --yes

    

ENV PATH /opt/conda/bin:$PATH

RUN conda create -n pyclj python=3.7 && conda install -n pyclj numpy mxnet \
    && conda install -c conda-forge opencv
## To install pip packages into the pyclj environment do
RUN conda run -n pyclj python3 -mpip install numpy opencv-python

FROM openjdk:8-alpine
RUN lein uberjar
COPY target/uberjar/vendo.jar /vendo/app.jar

EXPOSE 3000

CMD ["java", "-jar", "/vendo/app.jar", "--server.port=$PORT"]

我正在使用git push heroku master 推送我的项目,但我收到了错误:

remote: Step 8/11 : RUN lein uberjar        
remote:  ---> Running in 07533c6b0e9c        
remote: /bin/sh: lein: not found        
remote: The command '/bin/sh -c lein uberjar' returned a non-zero code: 127        

提示 lein 没有安装。第一个 RUN 命令中的 wget 应该安装 lein。我该如何解决这个问题?

【问题讨论】:

    标签: docker leiningen


    【解决方案1】:

    您需要添加RUN lein 才能运行自安装。

    【讨论】:

    • 我在 RUN lein uberjar 之前添加了它,但它给 RUN lein 行给出了同样的错误
    猜你喜欢
    • 2013-01-09
    • 2014-06-26
    • 1970-01-01
    • 2020-09-23
    • 2012-06-01
    • 2012-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多