缘起:
今天高高兴兴来上班,打开git更新代码,提示更新失败!
由于是在Mac机器上基于docker部署的,我以为是网络问题,于是开始排查。
1.检查网络 ===> 网络良好!
2.检查主机网络 ===> 网络良好!
3.检查docker服务:
什么!!!!竟然镜像和容器都没了!!!
于是,我像一个热锅上的蚂蚁,小伙伴都等着同步代码呢。一开始方向错了,做了如下操作:
1.查找如何恢复docker;
2.docker镜像丢失如何恢复;
3.docker容器历史记录如何查找;
以上是错误答案。
解决方案
前提:gitlab有三个重要的文件夹,必须在容器外中保存;也就是在启动的时候,使用--volume挂载。文件夹名称如下图:
基于以上前提,重新下载gitlab镜像,启动时,使用 --volume 挂载本地数据,然后就恢复啦!!!!!!!
docker run --detach \
--hostname test.com
--publish 8443:443 \
--publish 8090:80 \
--name gitlab \
--restart unless-stopped \
--volume /yourPath/gitlab/etc:/etc/gitlab \
--volume /yourPath/gitlab/log:/var/log/gitlab \
--volume /yourPath/gitlab/data:/var/opt/gitlab \
beginor/gitlab-ce:11.0.1-ce.0
PS:没有使用 -- volume 命令启动的小伙伴,请出门左转查看其它方案。有的话,留言告诉我,感谢!