使用自动化脚本重装docker和docker-compose(但脚本中未对旧版本的docker-compose进行任何处理,比如卸载删除)
导致执行docker-compose命令时报了错,大多数是1,偶尔是2
1、Cannot open self /usr/local/bin/docker-compose or archive /usr/local/bin/docker-compose.pkg
2、Segmentation fault 段错误(跟内存混乱有关,相当于用A去执行B)
发现在未安装docker-compose的服务器上可以正常执行
怀疑是docker-compose文件仍然是旧的版本,即未进行卸载旧docker-compose造成的
那么是直接去官网找到对应版本的docker-compose是否可以?
1、下载对应版本docker-compose, 我是最新版的,此时最新版链接:
https://github.com/docker/compose/releases/tag/1.25.0-rc4
2、进入步骤1中的网页后搜索 docker-compose-Linux-x86_64,复制该文件的链接地址
3、服务器上, cd /usr/local/bin/ ,wget
https://github.com/docker/compose/releases/download/1.25.0-rc4/docker-compose-Linux-x86_64
4、删除当前文件夹中docker-compose 文件,并将新下载的文件重命名为docker-compose
5 赋予权限 chmod +x /usr/local/bin/docker-compose, 如果你喜欢chmod -R 777, 那也可以。。。
6、 验证, 输入docker-compose --version ,此时出现版本信息, OK