docker: Error response from daemon: OCI runtime create failed: container_linux.go:380 报错解决
docker安装mysql5.7 运行不起来,报OCI runtime create failed
在docker上pull mysql5.7没问题
执行一下代码报错
docker run -p 3306:3306 --name mysql
-v /mydata/mysql/log:/var/log/mysql
-v /mydata/mysql/data:/var/lib/mysql
-v /mydata/mysql/conf:/etc/mysql
-e MYSQL_ROOT_PASSWORD=root
-d mysql:5.7
cd进入/mydata/mysql/conf查看发现并没有正确挂载,也没有/etc/mysql这个文件路径
报错原因:因为linux与docker版本的兼容性问题,docker版本需要降级或者重装
解决办法有两个:
- 重装指定版本docker
- 降级docker到指定版本
第一种办法:卸载并重装:
//第一步:卸载docker
//列出docker下载过的包
sudo yum list installed | grep docker
//删除以上所有相关安装包 sudo yum -y remove “以上显示相关包”
sudo yum -y remove docker-ce.x86_64
sudo yum -y remove docker-ce-cli.x86_64
//删除相关的镜像与容器
sudo rm -rf /var/lib/docker
sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-selinux
docker-engine-selinux
docker-engine
//测试是否删除
docker -v
//第二步:重装docker指定版本
//安装一些必要的系统工具:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
//添加软件源信息:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
//更新 yum 缓存:
sudo yum makecache fast
//查看可用版本的 Docker-ce:
yum list docker-ce --showduplicates | sort -r
//如果需要只显示table版本,可以关闭测试版本的list:
sudo yum-config-manager --enable docker-ce-edge
sudo yum-config-manager --enable docker-ce-test
//更新yum包索引
yum makecache fast
//安装指定版本的docker-ce:
sudo yum install -y docker-ce-17.03.2.ce-1.el7.centos
//报错:如果在安装指定版本的docker时显示需要安装指定版本的docker-ce-selinux依赖包,请安装:
yum install -y https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
然后重新拉取mysql
docker pull mysql:5.7
第二种办法:降级docker到指定版本:
//停止docker
sudo systemctl stop docker
//输入降级命令
yum downgrade --setopt=obsoletes=0 -y docker-ce-17.03.2.ce-1.el7 docker-ce-selinux-17.03.2.ce-1.el7 containerd.io
//检查docker版本
docker -v
重新创建容器并启动
docker run -p 3306:3306 --name mysql
-v /mydata/mysql/log:/var/log/mysql
-v /mydata/mysql/data:/var/lib/mysql
-v /mydata/mysql/conf:/etc/mysql
-e MYSQL_ROOT_PASSWORD=root
-d mysql:5.7
成功!!
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦