将命令行字符串参数传递给Docker

时间:2019-05-23 15:11:49

标签: docker docker-compose

我有一个docker compose文件,该文件传递命令以创建mongo数据库副本

version: '3.6'

services:

  mongo:
    image: mongo:3.2
    volumes:
     - ./data/db:/data/db
    command: mongod --smallfiles --oplogSize 128 --replSet rs0

  mongo-init-replica:
    image: mongo:3.2
    command: 'mongo mongo/rocketchat --eval "rs.initiate({ _id: ''rs0'', members: [ { _id: 0, host: ''localhost:27017'' } ]})"'
    depends_on:
      - mongo

我的问题是如何仅通过docker运行这些服务。 对于mongo DB,我正在使用

sudo docker run -d mongo --smallfiles --oplogSize 128 --replSet rs0

但是我如何通过docker为初始化副本服务执行一串命令

docker run  mongo 'mongo mongo/rocketchat --eval "rs.initiate({ _id: ''rs0'', members: [ { _id: 0, host: ''localhost:27017'' } ]})"'

如果我尝试执行此操作,则会导致错误,在此情况下使用的正确语法是什么。

0 个答案:

没有答案