最近在部署一个web服务,需要docker和docker-compose,遇到了许多问题,记录一下。
CentOS版本是7.6
先安装docker
yum -y install docker
然后安装docker-compose(可能会出现错误,建议先看完整篇博客再安装)
# 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
# 安装依赖
yum install epel-release
#安装python——pip
yum install -y python-pip
# 使用pip安装docker-compose
pip install docker-compose
# 升级python包
sudo yum upgrade python*
这是正常的流程,会出现这样的错误
那么需要先安装安装python-devel
yum install python-devel -y
然后再安装上边的使用pip安装docker-compose
安装成功之后测试
docker -v
docker-compose -v
正常之后就没问题了
但是我的docker-compose出现了这样的错误
这个问题我也没什么解决办法,就换一种方法安装docker-compose
安装docker-compose
sudo curl -L "https://get.daocloud.io/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
对二进制文件应用可执行权限:
chmod +x /usr/local/bin/docker-compose
然后再docker-compose -v
测试是否正常
如果提示找不到docker-compose,那就配置一下全局环境变量,具体操作在下边
vi /etc/profile
然后在末尾添加
export PATH=/usr/local/bin:$PATH
最后退出vim
执行source/etc/profile
这时候测试应该就正常了
但是在用docker-compose启动docker集群时报错Couldn’t connect to Docker daemon at http+docker://localunixsocket - is it running?
执行systemctl start docker
然后再启动docker集群解决问题
参考文章: