docker 容器会挂吗?docker容器有可能会挂掉,比如 docker run 启动的容器挂掉。对于容器挂掉我们最担心的莫过于数据问题,下面来举例说明。
在某个系统中,功能性的服务使用 docker stack deploy xxx 启动,某个数据库的服务单独使用 docker run xxx 启动,数据库服务没有将存储的位置挂载出来;结果重启了服务器,再登录到服务器重启服务的时候,发现之前数据库里的数据可能会消失(如果再使用 docker run 启动的话)。
办法1
数据丢失,一般最直接的想法是重新倒腾一次数据,但这样工作量很大。下次再启动的时候,把存储挂载到硬盘。不过也还有一个更为简单的方法。
办法2
可以使用 docker start container_name
再次将容器启动,这样的话数据还在。不过这也只是个临时的办法。
docker启动的镜像,如果不将数据映射出来的话,会存储在默认的volume;即使用docker restart xxx重启容器,那变动的数据也还是在的。
也就是说,在这个地方服务器重启了,容器挂掉了(使用docker ps查看,其容器状态是Exited),但其实之前的数据还会在默认的volume下,只有删除掉容器的时候,变动的数据才会丢失。
其实很好的办法,就是将容器的存储目录挂载出来。另外,一般来讲,数据库服务不应该使用容器启动。
融亿云的容器云产品是基于docker技术实现,拥有上万Linux镜像,弹性强大,可弹性扩展,自由轻松搭建私有网络,可做集群服务。性价比高,容器云产品