运行 'docker-compose up' 在 Windows 上引发 "No module named fnctl" 错误
Running 'docker-compose up' raises "No module named fnctl" error on Windows
设置:
- Windows 7
- Docker v1.6.0,作为 Boot2 的一部分安装docker
- Docker-compose v1.2.0
我使用 pip:
安装了 docker-compose
pip install docker-compose
而且好像安装成功了。但是,当我尝试 运行: docker-compose
在我有 docker-compose.yml 定义的目录中时,我得到以下异常:
Traceback (most recent call last):
File "c:\Python27\Scripts\docker-compose-script.py", line 9, in <module>
load_entry_point('docker-compose==1.2.0', 'console_scripts', 'docker-compose
')()
File "c:\Python27\lib\site-packages\pkg_resources.py", line 351, in load_entry
_point
return get_distribution(dist).load_entry_point(group, name)
File "c:\Python27\lib\site-packages\pkg_resources.py", line 2363, in load_entr
y_point
return ep.load()
File "c:\Python27\lib\site-packages\pkg_resources.py", line 2088, in load
entry = __import__(self.module_name, globals(),globals(), ['__name__'])
File "c:\Python27\lib\site-packages\compose\cli\main.py", line 11, in <module>
import dockerpty
File "c:\Python27\lib\site-packages\dockerpty\__init__.py", line 17, in <modul
e>
from dockerpty.pty import PseudoTerminal
File "c:\Python27\lib\site-packages\dockerpty\pty.py", line 21, in <module>
import dockerpty.io as io
File "c:\Python27\lib\site-packages\dockerpty\io.py", line 18, in <module>
import fcntl
ImportError: No module named fcntl
我从与 docker 无关的不同帖子了解到,抛出此错误是因为 fcntl 是 linux 原生的,显然,我的 python windows 发行版缺少它.但是,那里的人指定的解决方法不一定适用于我个人的情况。
我也尝试了这里的步骤:https://github.com/docker/compose/releases
我使用 curl(没有 uname 解析)下载了 linux 存档并授予了执行权,但仍然:
$ docker-compose -version
./docker-compose: ./docker-compose: cannot execute binary file
有人知道在 Boot2docker VM 上安装 docker-compose 的任何解决方法/实际功能方法吗?
您可以 运行 docker 在 boot2docker Windows.
上编写
您可以直接在 boot2docker
中将 docker compose
安装在容器 中并以这种方式使用它。
参见“ and issue 1085。
设置:
- Windows 7
- Docker v1.6.0,作为 Boot2 的一部分安装docker
- Docker-compose v1.2.0
我使用 pip:
安装了 docker-composepip install docker-compose
而且好像安装成功了。但是,当我尝试 运行: docker-compose
在我有 docker-compose.yml 定义的目录中时,我得到以下异常:
Traceback (most recent call last):
File "c:\Python27\Scripts\docker-compose-script.py", line 9, in <module>
load_entry_point('docker-compose==1.2.0', 'console_scripts', 'docker-compose
')()
File "c:\Python27\lib\site-packages\pkg_resources.py", line 351, in load_entry
_point
return get_distribution(dist).load_entry_point(group, name)
File "c:\Python27\lib\site-packages\pkg_resources.py", line 2363, in load_entr
y_point
return ep.load()
File "c:\Python27\lib\site-packages\pkg_resources.py", line 2088, in load
entry = __import__(self.module_name, globals(),globals(), ['__name__'])
File "c:\Python27\lib\site-packages\compose\cli\main.py", line 11, in <module>
import dockerpty
File "c:\Python27\lib\site-packages\dockerpty\__init__.py", line 17, in <modul
e>
from dockerpty.pty import PseudoTerminal
File "c:\Python27\lib\site-packages\dockerpty\pty.py", line 21, in <module>
import dockerpty.io as io
File "c:\Python27\lib\site-packages\dockerpty\io.py", line 18, in <module>
import fcntl
ImportError: No module named fcntl
我从与 docker 无关的不同帖子了解到,抛出此错误是因为 fcntl 是 linux 原生的,显然,我的 python windows 发行版缺少它.但是,那里的人指定的解决方法不一定适用于我个人的情况。
我也尝试了这里的步骤:https://github.com/docker/compose/releases
我使用 curl(没有 uname 解析)下载了 linux 存档并授予了执行权,但仍然:
$ docker-compose -version
./docker-compose: ./docker-compose: cannot execute binary file
有人知道在 Boot2docker VM 上安装 docker-compose 的任何解决方法/实际功能方法吗?
您可以 运行 docker 在 boot2docker Windows.
上编写
您可以直接在 boot2docker
中将 docker compose
安装在容器 中并以这种方式使用它。
参见“