小知识:Docker Compose在不同环境的多种安装方式

一、在线安装

目前只尝试了linux x86架构在线安装

1. 下载 dockercompose

下载 docker-compose到 /usr/local/bin/ 中

?
1
$ sudo curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

2. 给 docker-compose 执行权限

?
1
$ sudo chmod +x /usr/local/bin/docker-compose

3.验证一下

?
1
2
[root@localhost bin]# docker-compose -version
docker-compose version 1.21.2, build e7de1bc

二、离线安装

(一)linux x86安装docker-compose过程

方式1. 使用二进制文件安装

linux x86只要把https://github.com/docker/compose/releases中的对应linux版本的docker-compose二进制文件下载到本地并发送linux下,复制到 /usr/local/bin/就可以正常使用。

方式2. 使用python编译安装

从github上下载dockerCompoes源码。然后执行下面步骤:

进入到docker-compose的源码目录 执行python setup.py install

(二)其他没有二进制文件的系统安装过程

有些架构的docker-compose二进制文件官方没有提供,需要自己手动编译安装。其他官方没有提供的也需要自己手动使用python编译安装

经过尝试发现好像只有使用python编译可以成功安装,另外下面三种方式都失败了。

使用python编译安装

使用docker-compose github源码,python编译安装。

进入到docker-compose的源码目录 执行python setup.py install

报错

一直再报requests10版本错误,删除10版本,换了16版本,又报docker必须的requests2.14以上,说明下载的docker-compose源码版本和安装的docker版本不对应.

下载并查看源码下的requirements.txt文件中的requests版本,找到和已安装的docker对应版本,然后再次安装,又报texttable版本不正确。而且无网络不能自动下载,只能手动到https://pypi.org/project/texttable/上面找对应版本下载,编译安装。

解决缺少依赖的问题

这类缺少依赖的问题都要到python官网下载,然后通过编译安装。一个例子:

安装requests、texttable两个依赖,并且docker-compose与docker版本对应。继续执行python编译安装

进入到docker-compose得源码目录 执行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!

Couldnt 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 docker3.3.0目录下

执行命令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

再次进入docker-compose-1.21.2目录

使用python安装docker-compose

?
1
2
3
4
5
6
[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.建立软连接

?
1
[root@localhost bin]# ln -s /usr/bin/docker-compose /usr/local/bin/docker-compose

5.验证一下

?
1
2
[root@localhost bin]# docker-compose -version
docker-compose version 1.21.2, build e7de1bc

三、其他

python安装模块如何通过setup.py安装

进入安装目录 python setup.py build python setup.py install

其他尝试失败的安装方式

1.使用二进制文件安装

找编译好的二进制文件,尝试放到/usr/local/bin下面,报错:无法执行这个二进制文件。

2.使用dep安装

下载对应的dep安装包,解压data文件,把docker-compose放到/usr/local/bin下,执行报错:/usr/bin/python3:坏的的解释器

找镜像,找不到可用的镜像

3.make安装

开始使用make安装,发现缺少通常liunx下编译安装的configuration文件,使用./configuration 报错找不到文件

到此这篇关于Docker Compose在不同环境的多种安装方式的文章就介绍到这了,更多相关Docker Compose多种安装方式内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://segmentfault.com/a/1190000037495452

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Docker Compose多容器部署的实现

2023-3-27 14:16:34

建站知识

小知识:基于docker安装mariadb配置过程解析

2023-3-27 14:31:08

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索