CentOS7 Docker和Docker-compose

## 0x01 解决依赖

### 更新源

yum update

### 安装依赖和驱动

yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

yum install -y yum-utils device-mapper-persistent-data lvm2

### 设置yum源

yum-config-manager –add-repo https://download.docker.com/linux/centos/docker-ce.repo

### 查看docker可用版本

yum list docker-ce –showduplicates | sort -r

### 安装docker

默认安装最新版

yum install docker-ce

### 启动docker服务

启动服务:

systemctl start docker

设置开机启动:

systemctl enable docker

## 0x02 安装docker-compose

### 源码安装python3.8

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//下载源码,安装依赖
* wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tar.xz
* yum -y install gcc zlib-devel openssl-devel
* tar -xJvf Python-3.8.1.tar.xz
* yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
* yum install zlib* -y
* mkdir /usr/local/python3

//编译安装
* cd Python-3.8.1
* ./configure --prefix=/usr/local/python3 --enable-optimizations --with-ssl
* make
* make install

//创建软连接
* ln -s /usr/local/python3/bin/python3 /usr/bin/python3
* ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
  • 安装检测
1
2
3
//执行python命令检查版本
* python3 -V
* pip -V
  • 升级pip
1
2
* pip3 install --upgrade pip
* pip install --upgrade setuptools

### 安装docker-compose

pip3 install docker-compose

## 遇到的问题

### 问题1 —— 关于subprocess32的报错

#### 问题描述

详见图片

01.jpg

#### 解决办法

yum -y install python-devel python-subprocess32

### 问题2 —— 关于uninstall subprocess32的提示

#### 问题描述

02.jpg

#### 解决办法

使用pip安装docker-compose依赖python3环境,而centos7系统默认自带的Python版本是2.7.5,第一次执行pip install docker-compose失败后,安装python-subprocess32包后,系统中Python环境对应的信息记录文件并未更新,需要删除后,让系统重新自动生成。

find / -name subpro.egg-info
/usr/lib64/python2.7/site-packages/subprocess32-3.2.6-py2.7.egg-info
find / -name subpro.egg-info |xargs rm -rf

再次执行安装,pip install docker-compose,即可成功