无需安装即可运行docker-compose

时间:2019-06-27 06:17:32

标签: docker docker-compose

我尝试在没有安装的情况下运行docker-compose,因此使用docker:compose存储库(带有docker run)。

所以我尝试了这种方式:

docker run -ti --rm  -v $PWD:/XXX docker/compose:1.24.1 up -d

问题是我不知道docker/compose(这里是XXX)的容器目录名称来将当前文件夹作为卷挂载。

有什么想法吗??

谢谢!

2 个答案:

答案 0 :(得分:1)

您可以将本地docker-compose.yaml绑定到任何地方,只需记住要告诉docker-compose使用-f,就像下一个一样:

docker run -ti --rm  -v /var/run/docker.sock:/var/run/docker.sock -v ${PWD}:/code docker/compose:1.24.1 -f /code/docker-compose.yaml up -d

同时,不要忘记将docker.sock的主机绑定安装添加到容器中。

答案 1 :(得分:0)

XXX文件夹可以是容器内的任何东西。基本上在-v的{​​{1}}选项中。其-v [主机目录]:[容器目录]。

如果您尝试在容器中运行docker-compose,请按照以下步骤操作:

  • 在主机docker run上创建目录
  • 使用以下内容创建mkdir /root/test文件:
docker-compose.yaml
  • 运行version: '2' services: web: build: . ports: - "5000:5000" volumes: - .:/code redis: image: redis 命令以在容器内运行docker-compose。
docker run

注意::容器内的/ var / tmp目录中将包含docker-compose.yaml文件,因此我使用了docker run -itd -v /var/run/docker.sock:/var/run/docker.sock -v /root/test/:/var/tmp/ docker/compose:1.24.1 -f /var/tmp/docker-compose.yaml up -d 选项来指定yaml文件的完整路径。

希望这会有所帮助。