docker start启动容器不报错,却无法正常启动

问题描述:想启动 1e 这个容器
在这里插入图片描述
在这里插入图片描述
start后,没有报错,但是就是启动不了…
在这里插入图片描述

原因

查看一下日志

docker logs 1e1b85322dfa

好家伙,虽然它运行命令的时候不报错,但是它运行错误信息写到日志里面去了,查看最新的日记信息看到。这句
在这里插入图片描述
因此,报错原因是:chown: changing ownership of ‘/var/lib/mysql/’: Permission denied
解决办法:在docker run中加入 –privileged=true 给容器加上特定权限

docker run -d -p 3309:3306 -v /opt/mysql/conf:/etc/mysql/conf.d -v /opt/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mymysqlFour --privileged=true mysql:5.7

在这里插入图片描述
成功启动了容器。

然后我插入数据,之后再查看本地的挂载点/opt/mysql/conf和/opt/mysql/data是否有数据
在这里插入图片描述
在这里插入图片描述
本地的文件是存在的
在这里插入图片描述
这样的话,再创建一个容器,挂载在相同的文件夹,之前的数据也存在。

docker run -d -p 3310:3306 -v /opt/mysql/conf:/etc/mysql/conf.d -v /opt/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mymysqlFive --privileged=true mysql:5.7

在这里插入图片描述
但是连接显示错误
原因是一个本地的文件只能连接一个mysql数据库,如果之前的数据库存在,则再创建的数据库就连接不上了。。
在这里插入图片描述
我们把之前的容器关闭
在这里插入图片描述
再把我们后创建的容器打开
显示:
成功登录
在这里插入图片描述
查看数据表:
在这里插入图片描述
在这里插入图片描述
上一个容器创建的数据,到这个容器中也是存在的。成功。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可能是以下原因导致容器启动不起来: 1. 容器内部进程已经挂掉,可以使用docker logs命令查看容器日志,确定容器内部进程是否正常运行。 2. 容器与已经停止的容器端口冲突,可以使用docker ps -a命令查看所有容器的状态,确定是否存在端口冲突的情况。 3. 容器的镜像已经损坏,可以尝试重新下载对应的镜像,或者重新构建镜像。 4. 容器的挂载路径不正确,可以使用docker inspect命令查看容器的挂载路径是否正确。 5. 容器的资源限制不够,可以使用docker stats命令查看容器的资源使用情况,确定是否需要调整容器的资源限制。 解决方法: 1. 如果是容器内部进程挂掉导致容器启动不起来,可以进入容器内部使用命令查看具体的错误信息,然后针对性的解决问题。 2. 如果是端口冲突导致容器启动不起来,可以修改容器的端口映射,或者停止冲突的容器,然后重新启动容器。 3. 如果是容器的镜像损坏导致容器启动不起来,可以重新下载对应的镜像,或者重新构建镜像。 4. 如果是容器的挂载路径不正确导致容器启动不起来,可以使用docker inspect命令查看容器的挂载路径是否正确,然后进行调整。 5. 如果是容器的资源限制不够导致容器启动不起来,可以使用docker stats命令查看容器的资源使用情况,然后进行调整容器的资源限制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值