我创建了一个dockerfile,其中包括:
#Start Hue
RUN /etc/init.d/hue start
为了构建dockerfile,我正在做
docker build --no-cache --rm=true -t hue-centos .
在构建期间,我得到以下输出
Step 13 : RUN /etc/init.d/hue start
---> Running in 7d61c0c3a327
Detecting versions of components...
HUE_VERSION=2.6.1-3485
HDP=2.3.4
Hadoop=2.7.1
Pig=0.15.0
Hive-Hcatalog=1.2.1
Oozie=4.2.0
Error: No matching Packages to list
Ambari-server=
HBase=1.1.2
Knox=0.6.0
Storm=0.10.0
Falcon=0.6.1
Starting hue: [ OK ]
然后使用以下命令运行docker容器:
docker run -it -p 8000:8000 hue-centos:latest bash
但是,我看到色调管理器已经死了,我必须在CLI中再次手动启动,它工作正常,我可以在浏览器上访问Hue。我做错了什么?
答案 0 :(得分:1)
替换
RUN /etc/init.d/hue start
与
CMD ["/etc/init.d/hue", "start"]
RUN命令仅用于在配置映像时运行构建步骤。 CMD告诉图像启动时该怎么做。
https://docs.docker.com/engine/reference/builder/#run https://docs.docker.com/engine/reference/builder/#cmd