分享

docker-compose 的command配置问题

lanyangkj 发表于 2017-4-20 18:05:10 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 3 17186
具体场景是这样的:我做了一个zookeeper本地镜像,docker run下是可以进去的,很正常。
但我用 docker-compose就是进不去。大神帮我看看:
Dockerfile

FROM centos
MAINTAINER jarth@126.com
#copy jdk and tomcat into image
ADD ./jdk-8u101-linux-x64.tar.gz /opt
ADD ./zookeeper-3.4.6.tar.gz /opt
ENV JAVA_HOME /opt/jdk1.8.0_101
ENV PATH $JAVA_HOME/bin:$PATH
WORKDIR /opt/zookeeper-3.4.6



docker-compose.yml

version: '2'
services:
  zk01:
    build: .
    image: boco/zookeeper
    stdin_open: true
    tty: true
    ports:
      - "2181:2181"
    networks:
      - "netName1"
    volumes:
      - /root/zookeeper/zoo.cfg:/opt/zookeeper-3.4.6/conf/zoo.cfg
    command:
      - bin/zkServer.sh start
networks:
  netName1:
    driver: bridge

结果无法启动,要不报“no such file or directory“,要不就卡死在哪里。我怀疑是这command:问题。如何解决?


另外,如果我要执行多条命令,该如何写,比如

    command:
      - echo "1" > /data/zookeeper/zkdata/myid
      - bin/zkServer.sh start

可行吗?

已有(3)人评论

跳转到指定楼层
lanyangkj 发表于 2017-4-20 18:17:22
[root@071ce56b8a10 zookeeper-3.4.6]# bin/zkServer.sh start
JMX enabled by default
Using config: /opt/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@071ce56b8a10 zookeeper-3.4.6]# bin/zkServer.sh status
JMX enabled by default
Using config: /opt/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: standalone
[root@071ce56b8a10 zookeeper-3.4.6]#

上述是注释掉command命令部分后进入环境后的情况,手动开始zookeeper一切正常。

加上command不知道为什么就不行。官方 command带括号 【“”,“”】格式也不行。
回复

使用道具 举报

nextuser 发表于 2017-4-20 20:45:25
lanyangkj 发表于 2017-4-20 18:17
[root@071ce56b8a10 zookeeper-3.4.6]# bin/zkServer.sh start
JMX enabled by default
Using config: /o ...

参考这个文档吧。楼主的理解可能有误,建议参考下面文章。应该不需要comand

使用 Docker 部署 ZooKeeper 集群的搭建



回复

使用道具 举报

lanyangkj 发表于 2017-4-21 08:57:12
nextuser 发表于 2017-4-20 20:45
参考这个文档吧。楼主的理解可能有误,建议参考下面文章。应该不需要comand

使用 Docker 部署 ZooKeep ...

这也算一种方式吧。
但我docker pull zookeeper太慢多次失败,所以想自己搞一份镜像! 遇到这些问题啦

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条