我有一个运行Kong-api的Dockerfile,可以在openshift上进行部署。它可以建立,但是当我检查吊舱时,我得到了Back-off restarting failed container
。这是我的dockerfile
FROM ubuntu:18.04
RUN apt-get update && apt-get install -y apt-transport-https curl lsb-core
RUN echo "deb https://kong.bintray.com/kong-deb `lsb_release -sc` main" | tee -a /etc/apt/sources.list
RUN curl -o bintray.key https://bintray.com/user/downloadSubjectPublicKey?username=bintray
RUN apt-key add bintray.key
RUN apt-get update && apt-get install -y kong
COPY kong.conf /etc/kong/
RUN kong migrations bootstrap [-c /etc/kong/kong.conf]
EXPOSE 8000 8443 8001 8444
ENTRYPOINT ["kong", "start", "[-c /etc/kong/kong.conf]"]
我哪里错了?请帮我。预先感谢
答案 0 :(得分:2)
为了使kong正确启动,需要在有效的Postgres连接时执行以下命令:
kong migrations bootstrap && kong migrations up
此外,请注意,如果您愿意,当前Dockerfile的格式无效
在ENTRYPOINT
中传递选项,您可以这样写:
ENTRYPOINT ["kong", "start","-c", "/etc/kong/kong.conf"]
此外,您需要删除以下行:
RUN kong migrations bootstrap [-c /etc/kong/kong.conf]
请注意,上述行的格式无效,因为RUN
需要一个正常的shell命令,因此在这种情况下使用[]
是不正确的。
因此,当您部署到Openshift时,有几种方法可以实现所需的功能。