当前位置:服务器 > > 正文

docker日志挂载(docker run -v 挂载数据卷异常,容器状态一直是restarting的解决)

时间:2021-10-18 11:23:48类别:服务器

docker日志挂载

docker run -v 挂载数据卷异常,容器状态一直是restarting的解决出现的问题:

docker run 加上 -v 参数之后,容器就一直是 restarting 状态,去掉 -v 参数就可以正常运行

docker日志挂载(docker run -v 挂载数据卷异常,容器状态一直是restarting的解决)

查找问题:

使用 docker logs 'containerId'

这个containerId,就是docker run之后返回的containerId

docker日志挂载(docker run -v 挂载数据卷异常,容器状态一直是restarting的解决)

可以看到,是权限拒绝的问题

解决问题:

docker run时加上参数 :加上--privileged=true

例如:

  • docker run -dit -e MYSQL_ROOT_PASSWORD=123456 --name saasdev-mysql --restart always -v /home/data/mysql:/var/lib/mysql --privileged=true -p 3308:3306 mysql:5.6
    
  • 问题成功解决,容器正常启动了

    docker日志挂载(docker run -v 挂载数据卷异常,容器状态一直是restarting的解决)

    一点解释:

  • --privileged=true
    
  • 使用该参数,container内的root拥有真正的root权限。

    否则,container内的root只是外部的一个普通用户权限。

    privileged启动的容器,可以看到很多host上的设备,并且可以执行mount。

    甚至允许你在docker容器中启动docker容器

    补充:docker --restart=always 参数 docker重启容器自动重启

    创建容器时添加参数 --restart=always 后,当 docker 重启时,容器自动启动。

    使用方法:
  • docker container update --restart=always 容器名字
    
  • 操作实例如下:
  • [root@localhost mnt]# docker ps -a
    CONTAINER ID    IMAGE        COMMAND         CREATED       STATUS       PORTS        NAMES
    46cdfc60b7a6    nginx        "nginx -g 'daemon ..."  About a minute ago  Up 42 seconds    80/tcp       n3
    79d55a734c26    nginx        "nginx -g 'daemon ..."  About a minute ago  Up 42 seconds    80/tcp       n2
    f7b2206c019d    nginx        "nginx -g 'daemon ..."  About a minute ago  Up 46 seconds    80/tcp       n1
    [root@localhost mnt]# docker container update --restart=always n1
    n1
    [root@localhost mnt]# systemctl restart docker 
    [root@localhost mnt]# docker ps -a
    CONTAINER ID    IMAGE        COMMAND         CREATED       STATUS           PORTS        NAMES
    46cdfc60b7a6    nginx        "nginx -g 'daemon ..."  2 minutes ago    Exited (0) 5 seconds ago            n3
    79d55a734c26    nginx        "nginx -g 'daemon ..."  2 minutes ago    Exited (0) 5 seconds ago            n2
    f7b2206c019d    nginx        "nginx -g 'daemon ..."  2 minutes ago    Up 2 seconds        80/tcp       n1
     
    
  • 以上为个人经验,希望能给大家一个参考,也希望大家多多支持开心学习网。如有错误或未考虑完全的地方,望不吝赐教。

    上一篇下一篇

    猜您喜欢

    热门推荐