解决docker搭建gitlab时容器不停重启的问题

 更新时间:2022年05月09日 10:43:02   作者:落魄山陈平安  
这篇文章主要介绍了docker搭建gitlab时容器不停重启的问题,当用docker log 查看日志时,发现问题是在于配置文件没有权限创建的问题,本文给大家分享解决方案,感兴趣的朋友一起看看吧

在我按照gitlab的官方文档搭建后,准备进入容器修改配置文件时,发现进入不了。显示错误时容器正在重启,如下所示

[root@gitlab ~]# docker exec -it gitlab /bin/bash
Error response from daemon: Container 9780aafac4ed8366f359418e562c8038017e8a9d5675f34ed3aa6da9d312826b is restarting, wait until the container is running

然后我docker log 查看日志时,发现问题是在于配置文件没有权限创建的问题

[root@gitlab ~]# docker logs gitlab
....
....
....
Installing gitlab.rb config...
cp: cannot create regular file '/etc/gitlab/gitlab.rb': Permission denied
...
...
...

而这个权限问题是因为SElinux开启的缘故,官方文档已经给出了在SELinux开启的情况下创建容器的命令了。。

在映射卷的命令后加上":Z",如--volume /srv/gitlab/config:/etc/gitlab:Z

这个含义我也不太清楚,只能大致猜测这个是让容器在SELinux的干预下能操作文件吧

总结:

搭建环境仔细查看官方文档

有问题查看日志,配合搜索引擎以及官方文档排查问题

搭建文档地址:https://docs.gitlab.com/omnibus/docker/README.html 

补充:下面介绍下gitlab-docker 一直无限重启的解决方案,新建个容器

用docker搭建gitlab,这次因为自己的服务器扩容,所以直接关机了,没有在docker中关闭gitlab,然后启动gitlab的时候,一直无限重启,如图

百度了一圈,没有什么结果,之前刚开始搭建那会儿,也一直出现这种情况,因为当时情况比较多,处理着处理着问题就解决,所以,个人怀疑容器坏了,又重新新建了一个容器,最后正常了,因为宿主机的映射关系还是原来的映射关系。最后发生这种情况的原因也不知道,新建个容器就正常了。

新建容器命令还是原来的,容器名改变下就好了

docker run -d  -p 443:443 -p 8077:80 -p 222:22 --name gitlab8077 --restart always -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
docker run -d \
--hostname gitlab \
--publish 8443:443 --publish 80:80 --publish 2222:22 \
--name gitlab2 \
--privileged=true \
--volume /home/dockerfile/gitlab/config:/etc/gitlab \
--volume /home/dockerfile/gitlab/logs:/var/log/gitlab \
--volume /home/dockerfile/gitlab/data:/var/opt/gitlab \
twang2218/gitlab-ce-zh

这时,旧的容器可以删了。

到此这篇关于docker搭建gitlab时容器不停重启的问题的文章就介绍到这了,更多相关docker搭建gitlab容器重启内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 更改Docker默认数据目录解决部署空间不足问题

    更改Docker默认数据目录解决部署空间不足问题

    随着使用 Docker 的时间增加,存储在默认数据目录(通常是 /var/lib/docker)中的数据量也会不断增大,最终可能导致服务器上的存储空间不足,这篇文章将详细介绍如何更改 Docker 的默认数据目录,以便在服务器上释放存储空间并优化资源利用,需要的朋友可以参考下
    2024-06-06
  • 如何使用Docker Desktop进行本地打包和推送

    如何使用Docker Desktop进行本地打包和推送

    本文给大家介绍如何使用Docker Desktop进行本地打包和推送,本文给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2025-04-04
  • Docker制作镜像的完整过程

    Docker制作镜像的完整过程

    本文主要介绍了Docker制作镜像的完整过程,以制作CentOS镜像为例,讲述对镜像自定义,打包以及推送的远程仓库的过程,感兴趣的可以了解一下
    2021-11-11
  • Linux/Docker 中使用 System.Drawing.Common 踩坑记录分享

    Linux/Docker 中使用 System.Drawing.Common 踩坑记录分享

    这篇文章主要介绍了Linux/Docker 中使用 System.Drawing.Common 踩坑记录,本文通过两种方案给大家详细介绍,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • Docker构建Jar镜像的方法实现

    Docker构建Jar镜像的方法实现

    本文主要介绍了Docker构建Jar镜像的方法实现,主要包括编写Dockerfile、构建镜像、测试镜像等操作,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • Docker搭建LibreSpeed的实现步骤

    Docker搭建LibreSpeed的实现步骤

    LibreSpeed 是一个轻量级的网络速度测试工具,本文主要介绍了Docker搭建LibreSpeed的实现步骤,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • 私有云存储Minio Docker镜像无法启动,提示:Adding local Minio host to 'mc' configuration

    私有云存储Minio Docker镜像无法启动,提示:Adding local Minio

    使用Minio在本地搭建私有云存储时出现无法启动,查看日志频繁输出“Adding local Minio host to 'mc' configuration...”,然后停止了,本文给大家分享私有云存储Minio Docker镜像无法启动,提示:Adding local Minio host to 'mc' configuration,感兴趣的朋友一起看看吧
    2023-11-11
  • 给docker创建的elasticsearch容器添加密码简单步骤

    给docker创建的elasticsearch容器添加密码简单步骤

    在使用Elasticsearch(ES)Docker容器时,有时需要设置密码来保护数据的安全性,这篇文章主要给大家介绍了关于给docker创建的elasticsearch容器添加密码的简单步骤,需要的朋友可以参考下
    2024-02-02
  • Docker 教程之镜像列出详细介绍

    Docker 教程之镜像列出详细介绍

    这篇文章主要介绍了Docker 教程之镜像列出详细介绍的相关资料,需要的朋友可以参考下
    2016-12-12
  • 使用Docker搭建MySQL主从数据库的方法步骤

    使用Docker搭建MySQL主从数据库的方法步骤

    本文主要介绍了使用Docker搭建MySQL主从数据库的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01

最新评论