Files
DefectingCat.github.io/defect/try-the-gitlab.html
DefectingCat 8c7085f18f
2020-11-02 02:17:54 +00:00

7 lines
16 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html lang="zh-CN" data-default-color-scheme="&#34;auto&#34;"><head><meta charset="UTF-8"><link rel="apple-touch-icon" sizes="76x76" href="/images/img/apple-touch-icon.webp"><link rel="icon" type="image/png" href="/images/img/favicon.webp"><meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no,shrink-to-fit=no"><meta http-equiv="x-ua-compatible" content="ie=edge"><meta name="theme-color" content="#9DC8C8"><meta name="description" content=""><meta name="author" content="Defectink"><meta name="keywords" content=""><title>Gitlab尝鲜 - 🍭Defectink</title><link rel="stylesheet" href="https://cdn.defectink.com/static/twitter-bootstrap/4.5.3/css/bootstrap.min.css"><link rel="stylesheet" href="https://cdn.defectink.com/static/github-markdown-css/4.0.0/github-markdown.min.css"><link rel="stylesheet" href="/lib/hint/hint.min.css"><link rel="stylesheet" href="https://cdn.defectink.com/static/highlight.js/10.0.0/styles/github-gist.min.css"><link rel="stylesheet" href="//at.alicdn.com/t/font_1749284_ba1fz6golrf.css"><link rel="stylesheet" href="https://cdn.defectink.com/static/t/font_1736178_kmeydafke9r.css"><link rel="stylesheet" href="/css/main.css"><link rel="stylesheet" href="/css/xfy.css"><script src="/js/utils.js"></script><script src="/js/color-schema.js"></script><meta name="generator" content="Hexo 5.2.0"><link rel="alternate" href="/xml/atom.xml" title="🍭Defectink" type="application/atom+xml"><link rel="alternate" href="/xml/rss.xml" title="🍭Defectink" type="application/rss+xml"></head><body><header style="height:75vh"><nav id="navbar" class="navbar fixed-top navbar-expand-lg navbar-dark scrolling-navbar"><div class="container"><a class="navbar-brand" href="/">&nbsp;<strong>🍭Defectink</strong>&nbsp;</a> <button id="navbar-toggler-btn" class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"><div class="animated-icon"><span></span><span></span><span></span></div></button><div class="collapse navbar-collapse" id="navbarSupportedContent"><ul class="navbar-nav ml-auto text-center"><li class="nav-item"><a class="nav-link" href="/">🏠 首页</a></li><li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">📕 索引</a><div class="dropdown-menu" aria-labelledby="navbarDropdown"><a class="dropdown-item" href="/categories/">🎁 分类</a> <a class="dropdown-item" href="/tags/">🎐 标签</a></div></li><li class="nav-item"><a class="nav-link" href="/archives/">📂 归档</a></li><li class="nav-item"><a class="nav-link" href="/about/">🎃 关于</a></li><li class="nav-item"><a class="nav-link" href="/links/">🙆‍♀️ 小伙伴</a></li><li class="nav-item"><a class="nav-link" href="/pgp/">🔐 PGP</a></li><li class="nav-item" id="search-btn"><a class="nav-link" data-toggle="modal" data-target="#modalSearch">&nbsp;<i class="iconfont icon-search"></i>&nbsp;</a></li><li class="nav-item" id="color-toggle-btn"><a class="nav-link" href="javascript:">&nbsp;<i class="iconfont icon-dark" id="color-toggle-icon"></i>&nbsp;</a></li></ul></div></div></nav><div class="banner intro-2" id="background" parallax="true" style="background:url(/images/img/post.webp) no-repeat center center;background-size:cover"><div class="full-bg-img"><div class="mask flex-center" style="background-color:rgba(0,0,0,.3)"><div class="container page-header text-center fade-in-up"><span class="h2" id="subtitle"></span><div class="mt-3"><span class="post-meta mr-2"><i class="iconfont icon-author" aria-hidden="true"></i> Defectink</span><span class="post-meta"><i class="iconfont icon-date-fill" aria-hidden="true"></i> <time datetime="2019-06-19 15:42" pubdate>2019年6月19日 下午</time></span></div><div class="mt-1"><span class="post-meta mr-2"><i class="iconfont icon-chart"></i> 936 字</span><span class="post-meta mr-2"><i class="iconfont icon-clock-fill"></i> 10 分钟</span></div></div></div></div></div></header><main><div class="container-fluid"><div class="row"><div class="d-none d-lg-block col-lg-2"></div><div class="col-lg-8 nopadding-md"><div class="container nopadding-md" id="board-ctn"><div class="py-5" id="board"><article class="post-content mx-auto" id="post"><h1 style="display:none">Gitlab尝鲜</h1><p class="note note-info">本文最后水于2020年11月2日 凌晨</p><div class="markdown-body" id="post-body"><h2 id="Gitlab"><a href="#Gitlab" class="headerlink" title="Gitlab?"></a>Gitlab?</h2><p><strong>GitLab</strong>是由GitLab Inc.开发,使用<a target="_blank" rel="noopener" href="https://zh.wikipedia.org/wiki/MIT%E8%A8%B1%E5%8F%AF%E8%AD%89">MIT许可证</a>的基于<a target="_blank" rel="noopener" href="https://zh.wikipedia.org/wiki/%E4%BA%92%E8%81%94%E7%BD%91">网络</a><a target="_blank" rel="noopener" href="https://zh.wikipedia.org/wiki/Git">Git</a><a target="_blank" rel="noopener" href="https://zh.wikipedia.org/wiki/%E4%BB%93%E5%BA%93_(%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6)">仓库</a>管理工具,且具有<a target="_blank" rel="noopener" href="https://zh.wikipedia.org/wiki/Wiki">wiki</a><a target="_blank" rel="noopener" href="https://zh.wikipedia.org/wiki/%E4%BA%8B%E5%8A%A1%E8%B7%9F%E8%B8%AA%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F">issue跟踪</a>功能。</p><p>它是一款和常见的Github很像仓库管理工具大体使用上和Github很像。前端页面也很好看主要的是安装非常的方便它集成了自身需要的nginx的服务端。</p><p>起初是由Ruby写成后来部分由Go语言重写。</p><p>最早,它是完全免费的开源软件,按照 MIT 许可证分发。毕竟人家是公司后来Gitlab被拆分成GitLab CE社区版和 GitLab EE企业版。和如今的模式一样ce是完全免费使用的社区版而ee是可以进行试用且更多功能的收费版。</p><p><img src="../images/Gitlab%E5%B0%9D%E9%B2%9C/52152339.webp" srcset="/images/img/loading.gif" alt="52152339"></p><h2 id="安装部署"><a href="#安装部署" class="headerlink" title="安装部署"></a>安装部署</h2><p><a target="_blank" rel="noopener" href="https://about.gitlab.com/install/">官方</a>拥有详细的安装操作文档并且对于不同的Linux发行版也有着不同的软件仓库源。除此之外我们还可以选择其他的安装方式如Docker等。</p><p>我当前是部署在Ubuntu上的系统信息</p><p><img src="../images/Gitlab%E5%B0%9D%E9%B2%9C/411390967.webp" srcset="/images/img/loading.gif" alt="411390967"></p><pre><code>官方是推荐系统空闲内存在4GB以上的对于类似我们这样的个人使用的较少的来说推荐空闲内存是2GB以上。毕竟它会自己运行一套nginx、redis等服务端。</code></pre><p>自家的开源地址:<a target="_blank" rel="noopener" href="https://gitlab.com/gitlab-org/gitlab-ce/">Gitlab</a></p><p>相对于从源码安装来说,自家提供的相应的软件包更加的方便,也更不会容易出错。我们只需要选择相应的操作系统即可。</p><p>这里仅以Ubunt示例</p><p>首先安装需要的相关依赖:</p><pre><code class="hljs pgsql">sudo apt-<span class="hljs-keyword">get</span> <span class="hljs-keyword">update</span>
sudo apt-<span class="hljs-keyword">get</span> install -y curl openssh-<span class="hljs-keyword">server</span> ca-certificates</code></pre><p>如果我们不使用外部的SMTP来发邮件的话Gitlab可以使用postfix来进行发邮件。当然对我们完全不需要发邮件的这个需求的话这步完全可以跳过。</p><pre><code class="hljs maxima">sudo apt-<span class="hljs-built_in">get</span> install -y <span class="hljs-built_in">postfix</span></code></pre><p>基本依赖安装完后随后可以添加Gitlab的源来进行安装软件了</p><pre><code class="hljs awk">curl https:<span class="hljs-regexp">//</span>packages.gitlab.com<span class="hljs-regexp">/install/</span>repositories<span class="hljs-regexp">/gitlab/gi</span>tlab-ce/script.deb.sh | sudo bash
curl https:<span class="hljs-regexp">//</span>packages.gitlab.com<span class="hljs-regexp">/install/</span>repositories<span class="hljs-regexp">/gitlab/gi</span>tlab-ee/script.deb.sh | sudo bash</code></pre><p><em>注意ce和ee的区别</em></p><p>接下来,我们就可以使用<code>apt</code>来进行安装GItlab-ce了。修改下方命令的<code>https://gitlab.example.com</code>为自己Gitlab运行的域名。安装程序将自动配置该网址启动Gitlab</p><p>对于需要启用<code>https</code>的小伙伴们Gitlab可以自动请求[<a target="_blank" rel="noopener" href="https://docs.gitlab.com/omnibus/settings/ssl.html#lets-encrypthttpsletsencryptorg-integration">Lets Encrypt</a>]的证书,方便我们一步到位。当然我们也可以使用自己的证书。</p><pre><code class="hljs routeros">sudo <span class="hljs-attribute">EXTERNAL_URL</span>=<span class="hljs-string">&quot;https://gitlab.example.com&quot;</span> apt-<span class="hljs-builtin-name">get</span> install gitlab-ce</code></pre><p>到这里就安装的差不多了此时我们可以打开自己的Gitlab。第一次访问时会被重定向到设定<code>root</code>密码的界面。设置完成后我们的Gitlab就安装完成了。初始管理员的账户就是<code>root</code></p><p>由官方给我们提供的安装方式是不是相对来说非常的简单呢?</p><h2 id="使用"><a href="#使用" class="headerlink" title="使用"></a>使用</h2><p><img src="../images/Gitlab%E5%B0%9D%E9%B2%9C/99634888.webp" srcset="/images/img/loading.gif" alt="99634888"></p><p>简洁多彩的界面也时非常的好看的。默认没有配置邮件的情况下是可以随意注册的我们也可以在后台配置里关闭自动注册作为一个私人的git仓库。也可以手动添加用户给想尝鲜的小伙伴们。</p><p>当然Gitlab只是一个仓库源的管理工具提供了类似与Github的功能。对于我们终端使用git来说还是和Github一模一样。并且我们可以将其部署在国内的主机上来提升某些情况到Github速度奇慢无比的问题。</p><h2 id="启动与管理"><a href="#启动与管理" class="headerlink" title="启动与管理"></a>启动与管理</h2><pre><code class="hljs powershell"><span class="hljs-variable">$</span> sudo gitlab<span class="hljs-literal">-ctl</span> reconfigure
<span class="hljs-variable">$</span> sudo gitlab<span class="hljs-literal">-ctl</span> status
<span class="hljs-variable">$</span> sudo gitlab<span class="hljs-literal">-ctl</span> stop
<span class="hljs-variable">$</span> sudo gitlab<span class="hljs-literal">-ctl</span> restart
<span class="hljs-variable">$</span> sudo <span class="hljs-built_in">ps</span> aux | grep runsvdir</code></pre></div><hr><div><div class="post-metas mb-3"><div class="post-meta mr-3"><i class="iconfont icon-category"></i> <a class="hover-with-bg" href="/categories/%E5%AE%9E%E8%B7%B5/">实践</a></div><div class="post-meta"><i class="iconfont icon-tags"></i> <a class="hover-with-bg" href="/tags/Linux/">Linux</a></div></div><p class="note note-warning"><a target="_blank" href="https://zh.wikipedia.org/wiki/Wikipedia:CC_BY-SA_3.0%E5%8D%8F%E8%AE%AE%E6%96%87%E6%9C%AC" rel="nofollow noopener noopener">CC BY-SA 3.0❤</a></p><div class="post-prevnext row"><article class="post-prev col-6"><a href="/defect/alioss-for-typecho.html"><i class="iconfont icon-arrowleft"></i> <span class="hidden-mobile">AliOssForTypecho</span> <span class="visible-mobile">上一篇</span></a></article><article class="post-next col-6"><a href="/defect/basic-knowledge-of-systemd.html"><span class="hidden-mobile">systemd的基础操作</span> <span class="visible-mobile">下一篇</span><i class="iconfont icon-arrowright"></i></a></article></div></div><article class="comments" id="comments"><div id="vcomments"></div><script type="text/javascript">function loadValine(){addScript("https://cdn.defectink.com/static/valine/1.4.14/Valine.min.js",function(){new Valine({el:"#vcomments",app_id:"dD9t7mcIBVzJWag5ez6GPy2v-MdYXbMMI",app_key:"bWG6pmKsEscrH4JjrpNNAAy6",placeholder:"嘤嘤嘤???",path:window.location.pathname,avatar:"retro",meta:["nick","mail","link"],pageSize:"10",lang:"zh-CN",highlight:!0,recordIP:!1,serverURLs:""})})}waitElementVisible("vcomments",loadValine)</script><noscript>Please enable JavaScript to view the <a target="_blank" href="https://valine.js.org" rel="nofollow noopener noopener">comments powered by Valine.</a></noscript></article></article></div></div></div><div class="d-none d-lg-block col-lg-2 toc-container" id="toc-ctn"><div id="toc"><p class="toc-header"><i class="iconfont icon-list"></i>&nbsp;目录</p><div id="tocbot"></div></div></div></div></div></main><a id="scroll-top-button" href="#" role="button"><i class="iconfont icon-arrowup" aria-hidden="true"></i></a><div class="modal fade" id="modalSearch" tabindex="-1" role="dialog" aria-labelledby="ModalLabel" aria-hidden="true"><div class="modal-dialog modal-dialog-scrollable modal-lg" role="document"><div class="modal-content"><div class="modal-header text-center"><h4 class="modal-title w-100 font-weight-bold">搜索</h4><button type="button" id="local-search-close" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button></div><div class="modal-body mx-3"><div class="md-form mb-5"><input type="text" id="local-search-input" class="form-control validate"> <label data-error="x" data-success="v" for="local-search-input">关键词</label></div><div class="list-group" id="local-search-result"></div></div></div></div></div><footer class="text-center mt-5 py-3"><div class="footer-content"><a href="https://hexo.io" target="_blank" rel="nofollow noopener"><span>Hexo</span></a><i class="iconfont icon-love"></i> <a href="https://github.com/fluid-dev/hexo-theme-fluid" target="_blank" rel="nofollow noopener"><span>Fluid</span></a></div><div class="beian"><a href="http://beian.miit.gov.cn/" target="_blank" rel="nofollow noopener">皖ICP备17017808号</a></div></footer><script src="https://cdn.defectink.com/static/jquery/3.4.1/jquery.min.js"></script><script src="https://cdn.defectink.com/static/twitter-bootstrap/4.5.3/js/bootstrap.min.js"></script><script src="/js/debouncer.js"></script><script src="/js/main.js"></script><script src="/js/lazyload.js"></script><script defer="defer" src="https://cdn.defectink.com/static/clipboard.js/2.0.6/clipboard.min.js"></script><script src="/js/clipboard-use.js"></script><script src="/js/xfy.js"></script><script src="https://cdn.defectink.com/static/tocbot/4.11.1/tocbot.min.js"></script><script>$(document).ready(function(){var t=$("#board-ctn").offset().top;tocbot.init({tocSelector:"#tocbot",contentSelector:"#post-body",headingSelector:"h1,h2,h3,h4,h5,h6",linkClass:"tocbot-link",activeLinkClass:"tocbot-active-link",listClass:"tocbot-list",isCollapsedClass:"tocbot-is-collapsed",collapsibleClass:"tocbot-is-collapsible",collapseDepth:3,scrollSmooth:!0,headingsOffset:-t}),0<$(".toc-list-item").length&&$("#toc").css("visibility","visible")})</script><script src="https://cdn.defectink.com/static/typed.js/2.0.11/typed.min.js"></script><script>var typed=new Typed("#subtitle",{strings:[" ","Gitlab尝鲜&nbsp;"],cursorChar:"❤",typeSpeed:70,loop:!1});typed.stop(),$(document).ready(function(){$(".typed-cursor").addClass("h2"),typed.start()})</script><script src="/js/local-search.js"></script><script>var path="/xml/local-search.xml",inputArea=document.querySelector("#local-search-input");inputArea.onclick=function(){searchFunc(path,"local-search-input","local-search-result"),this.onclick=null}</script><script src="https://cdn.defectink.com/static/fancybox/3.5.7/jquery.fancybox.min.js"></script><link rel="stylesheet" href="https://cdn.defectink.com/static/fancybox/3.5.7/jquery.fancybox.min.css"><script>$("#post img:not(.no-zoom img, img[no-zoom]), img[zoom]").each(function(){var t=document.createElement("a");$(t).attr("data-fancybox","images"),$(t).attr("href",$(this).attr("src")),$(this).wrap(t)})</script><script src="https://cdn.defectink.com/static/mermaid/8.5.0/mermaid.min.js"></script><script>window.mermaid&&mermaid.initialize({theme:"default"})</script></body></html>