windows - 如何在Windows上安装docker-compose

如果我在boot2docker中键入以下命令,如docker网站上所示:

curl -L https://github.com/docker/compose/releases/download/1.1.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

当我键入以下命令以检查安装是否成功时,我得到:
/usr/local/bin/docker-compose: line 1: syntax error: unexpected newline

那么,如何在boot2docker上安装docker compose?


最佳答案:

2018年11月7日更新:
在Mac和Windows的Docker等桌面系统上,Docker Compose是
作为桌面安装的一部分。
Accordingly to the documentation,docker for windows和docker toolbox已经包括compose以及其他docker应用程序,因此大多数Windows用户不需要单独安装compose。
更新2017:this is now officially managed(for windows 10 supporting hyper-v)with"Docker for Windows"
请参见“Install Docker for Windows”。
它确实有一个chocolatey安装,因此:

choco install docker-for-windows 
# or
choco upgrade docker-for-windows 

同样,这需要64位Windows 10 Pro、Enterprise and Education(1511-11月更新,内部版本10586或更高版本)和Microsoft Hyper-V。
对于其他窗口,您仍然需要virtualbox+boot2docker。
更新:package for Docker(2015年11月)应使其正式可用于Windows(自RC2以来)。
docker compose 1.5PR 2230这样的拉请求有帮助。
PR 2143详细介绍Windows二进制文件的正式生成过程。
原始答案(2015年第1季度至第3季度)。
警告:根据Commit 13d5efc的说法,下面的原始答案(“docker-compose在容器中”)似乎有错误。
“docker compose in a container”方法似乎存在缓存问题(请参见Ed Morley (edmorley)
issue #6: "Changes to docker-compose.yml and Dockerfile not being detected"
就目前而言,在Windows用户中运行pythondocker-compose包似乎是最可靠的解决方案(已经花了很多时间尝试与替代方案作斗争)。
要从pypi安装docker compose,请从内部运行:
docker@boot2docker:~$ 
tce-load -wi python && curl https://bootstrap.pypa.io/get-pip.py | \
  sudo python - && sudo pip install -U docker-compose

为了避免每次重新启动boot2dockervm时都必须运行上述命令(因为更改不会持续),您可以使用boot2dockerlike so:
docker@boot2docker:~$ 
echo 'su docker -c "tce-load -wi python" && \
  curl https://bootstrap.pypa.io/get-pip.py | \
  python - && pip install -U docker-compose' | \ 
  sudo tee /var/lib/boot2docker/bootlocal.sh > /dev/null && \
  sudo chmod +x /var/lib/boot2docker/bootlocal.sh

(由于boot2docker不能作为bootlocal.sh运行,所以需要进行su docker -c体操,而tce-load则作为root运行。一旦Ed recommends固定,就不需要bootlocal.shroot了。
如果需要追加而不是覆盖,请将chmod添加到bootlocal.sh命令中)
如果要使用Docker Compose的预发布版本,请将-a替换为tee或等效版本。
原始答案:
我还通过以下方式在图像中运行#915(在Windows boot2docker上):
克隆bootlocal.sh中的pip install -U docker-compose(为了有持久性,因为pip install -U docker-compose>=1.3.0rc1https://github.com/docker/compose
构建Docker撰写图像:
cd /c/Users/<username>/myproject/compose
# that will put the repo in a detached HEAD, but it does not matter here
git checkout 1.2.0
docker build -t docker-compose .

添加一个“docker-compose”别名(在aautomatically mounted, when I use VirtualBox with its extension pack中,i/c/Users/<username>/myproject/compose filecopy to my /c/Users/<username>之前)。
dc='docker run --rm -i -t -v /var/run/docker.sock:/var/run/docker.sock -v `pwd`:`pwd` -w `pwd` docker-compose'

从那里,一个“dc”或“profile”就可以工作了。在窗户上。带boot2docker 1.6。