我在docker-compose(1.7版本0d7bf73,compose文件格式版本1)中运行以下内容时遇到了问题,但从命令行(docker 1.10.3)中可以正常工作:
docker run --rm --entrypoint="/bin/bash" node:4 -c "node gridd.js -t | ./node_modules/bunyan/bin/bunyan"
我的 Docker Compose 文件:
grid:
image: node:4-slim
entrypoint: /bin/bash
command: -c "node gridd.js -t | ./node_modules/bunyan/bin/bunyan"
使用此docker-compose文件将导致以下结果:
marcel@client ~/grid $ docker-compose -f ../docker-compose-test.yml -p test up
Removing test_grid_1
Recreating 4e0104efc149_4e0104efc149_4e0104efc149_test_grid_1
ERROR: for grid Container command not found or does not exist.
Attaching to
我还尝试使用exec方法和将docker-compose命令作为列表执行,但结果相同。
sh -c
(或者bash -c
),就可以保证安全了。 - akauppi