簡體   English   中英

如何在啟動時在Docker容器中啟動服務

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM