Docker-Compose是一个部署多个容器的简单但是非常必要的工具.

安装Docker-Compose之前,请先安装 python-pip

  安装 python-pip

  1、首先检查linux有没有安装python-pip包,终端执行 pip -V

[root@vm-50-151 network-scripts]# pip -V
-bash: pip: command not found

  2、没有python-pip包就执行命令 yum -y install epel-release

[root@vm-50-151 network-scripts]# yum -y install epel-release
Loaded plugins: fastestmirror, langpacks
base | 3.6 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
(1/2): extras/7/x86_64/primary_db | 129 kB 00:00:05
(2/2): updates/7/x86_64/primary_db | 3.6 MB 00:00:09
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.163.com
* updates: mirrors.cn99.com
Resolving Dependencies
--> Running transaction check
---> Package epel-release.noarch 0:7-9 will be installed
--> Finished Dependency Resolution Dependencies Resolved =======================================================================================================================================================================================================================
Package Arch Version Repository Size
=======================================================================================================================================================================================================================
Installing:
epel-release noarch 7-9 extras 14 k Transaction Summary
=======================================================================================================================================================================================================================
Install 1 Package Total download size: 14 k
Installed size: 24 k
Downloading packages:
epel-release-7-9.noarch.rpm | 14 kB 00:00:05
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : epel-release-7-9.noarch 1/1
Verifying : epel-release-7-9.noarch 1/1 Installed:
epel-release.noarch 0:7-9 Complete!

  3、执行成功之后,再次执行yum -y install python-pip

  

[root@vm-50-151 network-scripts]# yum install python-pip
Loaded plugins: fastestmirror, langpacks
epel/x86_64/metalink | 7.3 kB 00:00:00
epel | 4.7 kB 00:00:00
(1/3): epel/x86_64/group_gz | 261 kB 00:00:01
epel/x86_64/updateinfo FAILED 54% [=============================================- ] 165 kB/s | 3.9 MB 00:00:20 ETA
http://ftp.riken.jp/Linux/fedora/epel/7/x86_64/repodata/ed160c344c46b2ec8d800367326ceaf25560b1515a0603a1e33a795b8b6492a1-updateinfo.xml.bz2: [Errno 12] Timeout on http://ftp.riken.jp/Linux/fedora/epel/7/x86_64/repodata/ed160c344c46b2ec8d800367326ceaf25560b1515a0603a1e33a795b8b6492a1-updateinfo.xml.bz2: (28, 'Operation too slow. Less than 1000 bytes/sec transferred the last 30 seconds')
Trying other mirror.
(2/3): epel/x86_64/updateinfo | 845 kB 00:00:10
(3/3): epel/x86_64/primary_db | 6.1 MB 00:01:05
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirror01.idc.hinet.net
* extras: mirrors.163.com
* updates: mirrors.cn99.com
Resolving Dependencies
--> Running transaction check
---> Package python2-pip.noarch 0:8.1.2-5.el7 will be installed
--> Processing Dependency: python-setuptools for package: python2-pip-8.1.2-5.el7.noarch
--> Running transaction check
---> Package python-setuptools.noarch 0:0.9.8-7.el7 will be installed
--> Processing Dependency: python-backports-ssl_match_hostname for package: python-setuptools-0.9.8-7.el7.noarch
--> Running transaction check
---> Package python-backports-ssl_match_hostname.noarch 0:3.4.0.2-4.el7 will be installed
--> Processing Dependency: python-backports for package: python-backports-ssl_match_hostname-3.4.0.2-4.el7.noarch
--> Running transaction check
---> Package python-backports.x86_64 0:1.0-8.el7 will be installed
--> Finished Dependency Resolution Dependencies Resolved =======================================================================================================================================================================================================================
Package Arch Version Repository Size
=======================================================================================================================================================================================================================
Installing:
python2-pip noarch 8.1.2-5.el7 epel 1.7 M
Installing for dependencies:
python-backports x86_64 1.0-8.el7 base 5.8 k
python-backports-ssl_match_hostname noarch 3.4.0.2-4.el7 base 12 k
python-setuptools noarch 0.9.8-7.el7 base 397 k Transaction Summary
=======================================================================================================================================================================================================================
Install 1 Package (+3 Dependent packages) Total download size: 2.1 M
Installed size: 9.1 M
Is this ok [y/d/N]: y
Downloading packages:
warning: /var/cache/yum/x86_64/7/epel/packages/python2-pip-8.1.2-5.el7.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY===========- ] 0.0 B/s | 1.3 MB --:--:-- ETA
Public key for python2-pip-8.1.2-5.el7.noarch.rpm is not installed
(1/4): python2-pip-8.1.2-5.el7.noarch.rpm | 1.7 MB 00:00:00
(2/4): python-backports-1.0-8.el7.x86_64.rpm | 5.8 kB 00:00:05
(3/4): python-setuptools-0.9.8-7.el7.noarch.rpm | 397 kB 00:00:05
(4/4): python-backports-ssl_match_hostname-3.4.0.2-4.el7.noarch.rpm | 12 kB 00:00:06
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 302 kB/s | 2.1 MB 00:00:07
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Importing GPG key 0x352C64E5:
Userid : "Fedora EPEL (7) <epel@fedoraproject.org>"
Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5
Package : epel-release-7-9.noarch (@extras)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Is this ok [y/N]: y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : python-backports-1.0-8.el7.x86_64 1/4
Installing : python-backports-ssl_match_hostname-3.4.0.2-4.el7.noarch 2/4
Installing : python-setuptools-0.9.8-7.el7.noarch 3/4
Installing : python2-pip-8.1.2-5.el7.noarch 4/4
Verifying : python2-pip-8.1.2-5.el7.noarch 1/4
Verifying : python-setuptools-0.9.8-7.el7.noarch 2/4
Verifying : python-backports-1.0-8.el7.x86_64 3/4
Verifying : python-backports-ssl_match_hostname-3.4.0.2-4.el7.noarch 4/4 Installed:
python2-pip.noarch 0:8.1.2-5.el7 Dependency Installed:
python-backports.x86_64 0:1.0-8.el7 python-backports-ssl_match_hostname.noarch 0:3.4.0.2-4.el7 python-setuptools.noarch 0:0.9.8-7.el7 Complete!

  4、对安装好的pip进行升级 pip install --upgrade pip

[root@vm-50-151 network-scripts]# pip install --upgrade pip
Collecting pip
Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB)
100% |?..?..?..?..?..?..?..?..?..?..?..?..?..?..?..?..| 1.3MB 135kB/s
Installing collected packages: pip
Found existing installation: pip 8.1.2
Uninstalling pip-8.1.2:
Successfully uninstalled pip-8.1.2
Successfully installed pip-9.0.1

  至此,pip安装好了,执行pip -V 再次检查pip环境。

[root@vm-50-151 network-scripts]# pip -V
pip 9.0.1 from /usr/lib/python2.7/site-packages (python 2.7)

  安装Docker-Compose

  1.终端执行:pip install docker-compose

报错:ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443): Read timed out

  解决:pip --default-timeout=200 install -U docker-compose

  

[root@vm-50-151 network-scripts]# pip --default-timeout=200 install -U docker-compose
Collecting docker-compose
Using cached docker_compose-1.17.1-py2.py3-none-any.whl
Collecting websocket-client<1.0,>=0.32.0 (from docker-compose)
Using cached websocket_client-0.44.0-py2.py3-none-any.whl
Collecting requests!=2.11.0,<2.12,>=2.6.1 (from docker-compose)
Downloading requests-2.11.1-py2.py3-none-any.whl (514kB)
100% |?..?..?..?..?..?..?..?..?..?..?..?..?..?..?..?..| 522kB 832kB/s
Collecting PyYAML<4,>=3.10 (from docker-compose)
Downloading PyYAML-3.12.tar.gz (253kB)
100% |?..?..?..?..?..?..?..?..?..?..?..?..?..?..?..?..| 256kB 1.7MB/s
Collecting dockerpty<0.5,>=0.4.1 (from docker-compose)
Downloading dockerpty-0.4.1.tar.gz
Collecting ipaddress>=1.0.16; python_version < "3.3" (from docker-compose)
Downloading ipaddress-1.0.18-py2-none-any.whl
Collecting docopt<0.7,>=0.6.1 (from docker-compose)
Downloading docopt-0.6.2.tar.gz
Collecting backports.ssl-match-hostname>=3.5; python_version < "3.5" (from docker-compose)
Downloading backports.ssl_match_hostname-3.5.0.1.tar.gz
Collecting enum34<2,>=1.0.4; python_version < "3.4" (from docker-compose)
Downloading enum34-1.1.6-py2-none-any.whl
Collecting texttable<0.10,>=0.9.0 (from docker-compose)
Downloading texttable-0.9.1.tar.gz
Collecting cached-property<2,>=1.2.0 (from docker-compose)
Downloading cached_property-1.3.1-py2.py3-none-any.whl
Collecting docker<3.0,>=2.5.1 (from docker-compose)
Downloading docker-2.6.1-py2.py3-none-any.whl (117kB)
100% |?..?..?..?..?..?..?..?..?..?..?..?..?..?..?..?..| 122kB 2.8MB/s
Collecting jsonschema<3,>=2.5.1 (from docker-compose)
Downloading jsonschema-2.6.0-py2.py3-none-any.whl
Collecting six<2,>=1.3.0 (from docker-compose)
Downloading six-1.11.0-py2.py3-none-any.whl
Collecting docker-pycreds>=0.2.1 (from docker<3.0,>=2.5.1->docker-compose)
Downloading docker_pycreds-0.2.1-py2.py3-none-any.whl
Collecting functools32; python_version == "2.7" (from jsonschema<3,>=2.5.1->docker-compose)
Downloading functools32-3.2.3-2.zip
Installing collected packages: six, websocket-client, requests, PyYAML, dockerpty, ipaddress, docopt, backports.ssl-match-hostname, enum34, texttable, cached-property, docker-pycreds, docker, functools32, jsonschema, docker-compose
Found existing installation: six 1.9.0
Uninstalling six-1.9.0:
Successfully uninstalled six-1.9.0
Running setup.py install for PyYAML ... done
Running setup.py install for dockerpty ... done
Running setup.py install for docopt ... done
Found existing installation: backports.ssl-match-hostname 3.4.0.2
Uninstalling backports.ssl-match-hostname-3.4.0.2:
Successfully uninstalled backports.ssl-match-hostname-3.4.0.2
Running setup.py install for backports.ssl-match-hostname ... done
Running setup.py install for texttable ... done
Running setup.py install for functools32 ... done
Successfully installed PyYAML-3.12 backports.ssl-match-hostname-3.5.0.1 cached-property-1.3.1 docker-2.6.1 docker-compose-1.17.1 docker-pycreds-0.2.1 dockerpty-0.4.1 docopt-0.6.2 enum34-1.1.6 functools32-3.2.3.post2 ipaddress-1.0.18 jsonschema-2.6.0 requests-2.11.1 six-1.11.0 texttable-0.9.1 websocket-client-0.44.0

  检查docker-compose 安装:docker-compose -version

[root@vm-50-151 network-scripts]# docker-compose -version
docker-compose version 1.17.1, build 6d101fb

  

  如果报错:

pkg_resources.DistributionNotFound: backports.ssl-match-hostname>=3.5

  解决方法:更新backports.ssl-match-hostname的版本,在终端输入命令
  pip install --upgrade backports.ssl_match_hostname

  如若python版本过低,需升级,见:http://www.cnblogs.com/YatHo/p/8257387.html

CentOS7下安装Docker-Compose的更多相关文章

  1. docker(一) Centos7下安装docker

    docker(一) Centos7下安装dockerdocker(二) windows10下安装dockerdocker(三) 镜像和容器常用命令 docker(四) 使用Dockerfile构建镜像 ...

  2. CentOS7下安装docker(Docker系列1)

    CentOS7下安装docker 系统要求 为了安装docker,需要准备 64-bit的CentOS 7 删除非官方的Docker包 yum的仓库中有一个很旧的Docker包, 现在Docker官方 ...

  3. centos7下安装docker与镜像加速

    1.背景 centos7下安装docker 2.安装 第一步:检查是否为centos7版本 第二步:依赖环境安装 执行如下两个命令: yum -y install gcc yum -y install ...

  4. centos7 下安装docker报错:You could try using...

    搞了台VPS,想要装docker,发现死活装不上,各种报错.之前系统是centos6,发现官方现在已经不支持centos6了,遂升级到centos7,然后还是出现下面这个错误. Error: Pack ...

  5. Linux(centos7)下安装Docker

    近期公司开始推Docker技术.这个系列的文章都是基于CentOS7系统下进行讲解的. Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器 ...

  6. centos7下安装docker(21docker swarm集群创建)

    创建swarm集群: 实验环境:盗图 swarm-manager是manager node,swarm-worker1和swarm-worker2是worker node. 所有节点的docker版本 ...

  7. centos7下安装docker(14安装docker machine)

    之前我们做的实验都是在一个host上面的,其实在真正的环境中有多个host,容器在这些host上面启动,运行,停止和销毁,相关容器会通过网络相互通信,无论他们是否运行在相同的host上面. 对于这种歌 ...

  8. Centos7下安装Docker(详细的新手装逼教程)

    早就听说过Docker,一直不清楚是个啥,今天捣鼓了一下,这里做个记录. --------------------------------------------------------------- ...

  9. Centos7下安装Docker[z]

    [z]https://www.cnblogs.com/qgc1995/p/9553572.html https://yq.aliyun.com/articles/691610?spm=a2c4e.11 ...

  10. Centos7下安装docker(1)

    1.确认系统没安装任何docker相关的安装包 yum remove docker docker-common docker-selinux docker-engine centos7的docker存 ...

随机推荐

  1. 漂亮CSS样式用户留言表单

    基本样式 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

  2. 教女朋友学Python运行环境搭建

    下班比较早,吃了饭没什么事,就和女朋友一起研究了Python. 编程语言有很多,为什么选择它呢?因为它火吧,没什么好解释的,下面开始第一步,环境搭建.网上的教程实在太多,各种系统的各种版本,本地链接下 ...

  3. Elasticsearch全文搜索——adout

    现在尝试下稍微高级点儿的全文搜索——一项传统数据库确实很难搞定的任务. 搜索下所有喜欢攀岩(rock climbing)的雇员: curl -XGET 'localhost:9200/megacorp ...

  4. 第一安装oracle数据库后,需要创建一个用户,给用户解锁并赋予权限

    1.第一次安装oracle数据库应该做的事情. 注: 1.安装oracle后需要创建用户,连接数据库,(注意数据库名,还有好像后面的 ":"也有影响) 2.解锁用户, 3.授予新登 ...

  5. C# 委托详解(一)

    1.委托简单例子 class eeProgram { // 声明delegate对象 public delegate string CompareDelegate(int a, int b); // ...

  6. 小白的Python之路 day4 装饰器前奏

    装饰器前奏: 一.定义: 1.装饰器本质是函数,语法都是用def去定义的 (函数的目的:他需要完成特定的功能) 2.装饰器的功能:就是装饰其他函数(就是为其他函数添加附加功能) 二.原则: 1. 不能 ...

  7. 【批处理】shift用法举例

    @echo off set sum=0 call :sub sum 1 2 3 4 echo sum=%sum% pause :sub set /a %1=%1+%2 shift /2 if not ...

  8. Hibernate问题浅析

      1.什么是SessionFactory?什么是Session?httpsession和hibernate的session的有什么区别?     SessionFactory接口负责初始化Hiber ...

  9. vue入坑总结

    1.Do not mount Vue to <html> or <body> - mount to normal elements instead. Vue2.x之后不推荐挂载 ...

  10. thinkphp3.2.3的使用心得(零)

    从模板传参到控制器 模板中代码: <volist name="list" id="vo"> <a href="__CONTROLLE ...