[英]How to start service in docker container at start up
我正在嘗試使用以下docker文件為OpenTSDB設置docker鏡像
FROM centos:6.7
MAINTAINER http://www.centos.org
RUN yum -y update && yum clean all
RUN yum -y install httpd && yum clean all
RUN yum -y install java-1.7.0-openjdk
RUN yum -y install gnuplot
RUN yum install -y https://github.com/OpenTSDB/opentsdb/releases/download/v2.2.0/opentsdb-2.2.0.noarch.rpm
RUN sed -i '/^#tsd.storage.hbase.zk_basedir*/c\tsd.storage.hbase.zk_basedir = \/hbase-unsecure' /etc/opentsdb/opentsdb.conf
RUN sed -i '/^#tsd.storage.hbase.zk_quorum*/c\tsd.storage.hbase.zk_quorum = 10.8.18.14:2181,10.8.18.15:2181,10.8.18.17:2181' /etc/opentsdb/opentsdb.conf
RUN echo 'tsd.storage.fix_duplicates = true' >> /etc/opentsdb/opentsdb.conf
RUN echo 'tsd.http.request.cors_domains = *' >> /etc/opentsdb/opentsdb.conf
EXPOSE 4242
CMD service opentsdb start && tail -F /var/log/opentsdb/opentsdb.log
最后一個CMD是將opentsdb作為服務啟動,但是它不起作用。
不知道我在這里缺少什么,有人可以幫忙嗎?
您應該在前台啟動docker進程,不要依賴init,upstart或其他OS服務控制器來運行命令。 我不熟悉opentsdb,但看來他們有以下條件可以在前台開始其過程:
CMD tsdb tsd
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.