Heroku应用程序在Docker容器中时崩溃

时间:2020-04-08 10:20:19

标签: docker heroku

我有以下heroku.yml:

build:
  docker:
    web: Dockerfile
run:
  web: java $JVM_OPTS -cp target/myapp.jar clojure.main -m myapp.application

我正在推动使用heroku,并且Docker容器已正确加载,并且也部署了应用程序而没有任何警告或错误,但是应用程序崩溃并显示以下日志:

2020-04-07T22:58:22.151943+00:00 heroku[web.1]: State changed from starting to crashed
2020-04-07T22:58:22.157295+00:00 heroku[web.1]: State changed from crashed to starting
2020-04-07T22:58:22.098498+00:00 app[web.1]: /bin/sh: 1: java: not found
2020-04-07T22:58:25.714638+00:00 heroku[web.1]: State changed from starting to crashed
2020-04-07T22:58:25.654321+00:00 app[web.1]: /bin/sh: 1: java: not found

为什么找不到Java,我做错了什么?

-编辑---

这是docker文件

# 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 \
    && 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 \
    && 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.6 && conda install -n pyclj numpy mxnet

## To install pip packages into the pyclj environment do
RUN conda run -n pyclj python3 -mpip install numpy


0 个答案:

没有答案