热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Gitlab入门

昨天基于网上的教程搭建gitlab-ce不是很成功,稳定性不足,页面总是出现崩溃。今天把环境清理了一下,重新使用gitlab-ee的

昨天基于网上的教程搭建 gitlab-ce 不是很成功,稳定性不足,页面总是出现崩溃。今天把环境清理了一下,重新使用 gitlab-ee 的 docker 镜像。


gitlab 分两个版本,一个是社区版 ce ,另一个是企业版 ee,在测试环境两者都可使用,没有功能限制。


清理现有的容器环境

    $ docker ps -a
    $ docker stop
    $ docker rm


    重新下载 gitlab-ee 镜像

      $ export GITLAB_HOME=/it/lts/gitlab


      $ docker run --detach \
      --hostname gitlab.example.com \
      --publish 443:443 --publish 880:880 --publish 222:222 \
      --name gitlab \
      --restart always \
      --volume $GITLAB_HOME/config:/etc/gitlab \
      --volume $GITLAB_HOME/logs:/var/log/gitlab \
      --volume $GITLAB_HOME/data:/var/opt/gitlab \
      --shm-size 1024m \
      gitlab/gitlab-ee:latest


      为了提高响应速度,可以多给容器分配一些共享内存。此时配置的端口在配置文件中还没有修改,稍后在配置文件中修改相应的端口参数。需要注意的是本地端口和容器内端口要一致,不然程序启动后,界面显示与实际不符。


      修改配置端口,原始 web 端口为 80,ssh 端口为 22,修改为容器启动命令中对应的端口

        # $GITLAB_HOME/config/gitlab.rb
        external_url 'http://192.168.1.1:880'
        gitlab_rails['gitlab_shell_ssh_port'] = 222


        重启容器

          $ docker ps -a
          $ docker stop
          $ docker start


          或者通过容器名重启 gitlab 服务

            $ docker restart gitlab


            重新开一个Console窗口,观察实时日志

              docker logs -f gitlab


              等日志中输出稳定后,系统初始化完毕。使用初始 root 账号登录系统,初始密码在 $GITLAB_HOME/config/initial_root_password,该文件会在系统初始化完24小时后自动删除。


              到此系统搭建完毕,之后都可以通过图形界面对 gitlab 进行配置,可以把当前不会用到的功能关闭,比如 CI、DevOps、SMTP 相关的配置。在配置文件中可以配置白名单,用来提高安全性。


              更换为 gitlab-ee 的镜像后,系统反应速度和稳定性都比昨天尝试的 gitlab-ce 好很多。


              如果需要进到容器中对 gitlab 服务进行管理,可以使用 docker 交互命令:

                $ docker exec -it gitlab /bin/bash


                gitlab 管理命令

                  $ gitlab-ctl status
                  $ gitlab-ctl stop
                  $ gitlab-ctl start
                  $ gitlab-ctl restart
                  $ gitlab-ctl reconfigure


                  参考

                  1.  https://docs.gitlab.com/ee/install/docker.html

                  2. https://registry.hub.docker.com/r/gitlab/gitlab-ee/tags



                  推荐阅读
                  • Metasploit攻击渗透实践
                    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
                  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
                  • Linux如何安装Mongodb的详细步骤和注意事项
                    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
                  • 本文介绍了H5游戏性能优化和调试技巧,包括从问题表象出发进行优化、排除外部问题导致的卡顿、帧率设定、减少drawcall的方法、UI优化和图集渲染等八个理念。对于游戏程序员来说,解决游戏性能问题是一个关键的任务,本文提供了一些有用的参考价值。摘要长度为183字。 ... [详细]
                  • Spring框架《一》简介
                    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
                  • 本文探讨了容器技术在安全方面面临的挑战,并提出了相应的解决方案。多租户保护、用户访问控制、中毒的镜像、验证和加密、容器守护以及容器监控都是容器技术中需要关注的安全问题。通过在虚拟机中运行容器、限制特权升级、使用受信任的镜像库、进行验证和加密、限制容器守护进程的访问以及监控容器栈,可以提高容器技术的安全性。未来,随着容器技术的发展,还需解决诸如硬件支持、软件定义基础设施集成等挑战。 ... [详细]
                  • 1.脚本功能1)自动替换jar包中的配置文件。2)自动备份老版本的Jar包3)自动判断是初次启动还是更新服务2.脚本准备进入ho ... [详细]
                  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
                  • Spring特性实现接口多类的动态调用详解
                    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
                  • 本文介绍了Linux Shell中括号和整数扩展的使用方法,包括命令组、命令替换、初始化数组以及算术表达式和逻辑判断的相关内容。括号中的命令将会在新开的子shell中顺序执行,括号中的变量不能被脚本余下的部分使用。命令替换可以用于将命令的标准输出作为另一个命令的输入。括号中的运算符和表达式符合C语言运算规则,可以用在整数扩展中进行算术计算和逻辑判断。 ... [详细]
                  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
                    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
                  • crontab 自动执行定时任务时,命令无法执行的解决方案
                    为什么80%的码农都做不了架构师?最近在工作中需要使用crontab执行定时任务,处理memcacheq消息队列里的数据,但是发现在 ... [详细]
                  • 安装oracle软件1创建用户组、用户和目录bjdb节点下:[rootnode1]#groupadd-g200oinstall[rootnode1]#groupad ... [详细]
                  • Tomcat安装与配置教程及常见问题解决方法
                    本文介绍了Tomcat的安装与配置教程,包括jdk版本的选择、域名解析、war文件的部署和访问、常见问题的解决方法等。其中涉及到的问题包括403问题、数据库连接问题、1130错误、2003错误、Java Runtime版本不兼容问题以及502错误等。最后还提到了项目的前后端连接代码的配置。通过本文的指导,读者可以顺利完成Tomcat的安装与配置,并解决常见的问题。 ... [详细]
                  • 点击上方“新机器视觉”,选择加”星标”或“置顶”重磅干货,第一时间送达很早就想总结一下前段时间学习HALCON的心得,但由于其他的事情总是抽不出时间。去年有过一段时间的集中学习,做 ... [详细]
                  author-avatar
                  廖赞胜
                  这个家伙很懒,什么也没留下!
                  PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
                  Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有