我不想再玩Dockerfiles了。所以我尝试在Docker中运行Apache Nifi。我知道已经有一个容器,用于培训。 我将Dockerfile配置如下:
FROM openjdk:8-jre-alpine
COPY . /app
WORKDIR /app
EXPOSE 8080
CMD ["sh","nifi-1.9.0/bin/nifi.sh","start"]
现在这似乎可行,但是当我尝试使用以下命令运行容器时:
docker build --tag nifid .
docker run --name nifi-app -p 8080:8080 nifid
它似乎可以运行,但是端口没有暴露,也无法通过localhost:8080到达应用程序。 有关如何进行的任何建议? 这就是docker ps --all show me
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ccf75612d5ac nifid "sh nifi-1.9.0/bin/n…" 20 hours ago Exited (0) 20 hours ago nifi-app
我意识到该应用程序现在很激动。 Dockerfile出了什么问题?
编辑: 码头工人的日志[Container ID]随地吐痰如下:
Java home: /usr/lib/jvm/java-1.8-openjdk/jre
NiFi home: /app/nifi-1.9.0
Bootstrap Config File: /app/nifi-1.9.0/conf/bootstrap.conf
编辑: 找到一个不错的“文档” https://hub.docker.com/r/apache/nifi/dockerfile
需要深入一点,但应该对工作
答案 0 :(得分:0)
您的容器好像停了下来(状态已退出)
docker ps (shows running containers)
docker ps -a (shows all containers, even stopped)
尝试
docker logs <container-id>
查看容器的输出。它将正确告诉您容器为何停止。
答案 1 :(得分:0)