[toc]python
目前只尝试了linux x86架构在线安装linux
下载 docker-compose到 /usr/local/bin/
中git
$ sudo curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
[root@localhost bin]# docker-compose -version docker-compose version 1.21.2, build e7de1bc
linux x86只要把https://github.com/docker/compose/releases
中的对应linux版本的docker-compose二进制文件下载到本地并发送linux下,复制到 /usr/local/bin/
就能够正常使用。github
从github上下载dockerCompoes源码。而后执行下面步骤:docker
有些架构的docker-compose二进制文件官方没有提供,须要本身手动编译安装。其余官方没有提供的也须要本身手动使用python编译安装网络
通过尝试发现好像只有使用python编译能够成功安装,另外下面三种方式都失败了。
架构
使用docker-compose github源码,python编译安装。并发
python setup.py install
一直再报requests10版本错误,删除10版本,换了16版本,又报docker必须的requests2.14以上,说明下载的docker-compose源码版本和安装的docker版本不对应.python2.7
下载并查看源码下的requirements.txt
文件中的requests版本,找到和已安装的docker对应版本,而后再次安装,又报texttable版本不正确。并且无网络不能自动下载,只能手动到https://pypi.org/project/texttable/
上面找对应版本下载,编译安装。curl
这类缺乏依赖的问题都要到python官网下载,而后经过编译安装。一个例子:
安装requests、texttable两个依赖,而且docker-compose与docker版本对应。继续执行python编译安装
python setup.py install
报错:
Installed /usr/lib/python2.7/site-packages/docker_compose-1.21.2-py2.7.egg Processing dependencies for docker-compose==1.21.2 Searching for docker<4.0,>=3.3.0 Reading https://pypi.python.org/simple/docker/ Download error on https://pypi.python.org/simple/docker/: [Errno -2] Name or service not known -- Some packages may not be found! Couldn't retrieve index page for 'docker' Scanning index of all packages (this may take a while) Reading https://pypi.python.org/simple/ Download error on https://pypi.python.org/simple/: [Errno -2] Name or service not known -- Some packages may not be found! No local packages or download links found for docker<4.0,>=3.3.0 error: Could not find suitable distribution for Requirement.parse('docker<4.0,>=3.3.0')
缘由:python下的docker版本错误,从新到https://pypi.python.org/simpl...,并编译安装
python setup.py install
输出:
... ...Using /usr/lib/python2.7/site-packages/idna-2.5-py2.7.egg Searching for chardet==3.0.2 Best match: chardet 3.0.2 Processing chardet-3.0.2-py2.7.egg chardet 3.0.2 is already the active version in easy-install.pth Installing chardetect script to /usr/bin Using /usr/lib/python2.7/site-packages/chardet-3.0.2-py2.7.egg Finished processing dependencies for docker==3.3.0
使用python安装docker-compose
[root@localhost docker-3.3.0]# cd ../docker-compose-1.21.2/ [root@localhost docker-compose-1.21.2]# ls build compose dist LICENSE README.rst setup.cfg tests CHANGELOG.md contrib docker_compose.egg-info MANIFEST.in requirements-dev.txt setup.py tox.ini CHANGES.md CONTRIBUTING.md Dockerfile [root@localhost docker-compose-1.21.2]# python setup.py install
最后安装成功显示:
Using /usr/lib/python2.7/site-packages/idna-2.5-py2.7.egg Searching for chardet==3.0.2 Best match: chardet 3.0.2 Processing chardet-3.0.2-py2.7.egg chardet 3.0.2 is already the active version in easy-install.pth Installing chardetect script to /usr/bin Using /usr/lib/python2.7/site-packages/chardet-3.0.2-py2.7.egg Finished processing dependencies for docker-compose==1.21.2
4.创建软链接
[root@localhost bin]# ln -s /usr/bin/docker-compose /usr/local/bin/docker-compose
5.验证一下
[root@localhost bin]# docker-compose -version docker-compose version 1.21.2, build e7de1bc
python setup.py build
python setup.py install
找编译好的二进制文件,尝试放到/usr/local/bin
下面,报错:没法执行这个二进制文件。
下载对应的dep安装包,解压data文件,把docker-compose放到/usr/local/bin
下,执行报错:/usr/bin/python3:坏的的解释器
找镜像,找不到可用的镜像
开始使用make安装,发现缺乏一般liunx下编译安装的configuration文件,使用./configuration
报错找不到文件