{"id":18864,"date":"2024-11-19T12:57:13","date_gmt":"2024-11-19T04:57:13","guid":{"rendered":"https:\/\/fwq.ai\/blog\/18864\/"},"modified":"2024-11-19T12:57:13","modified_gmt":"2024-11-19T04:57:13","slug":"%e8%af%a6%e8%a7%a3centos-gitlab-%e5%ae%89%e8%a3%85%e9%85%8d%e7%bd%ae%e6%95%99%e7%a8%8b","status":"publish","type":"post","link":"https:\/\/fwq.ai\/blog\/18864\/","title":{"rendered":"\u8be6\u89e3CentOS GitLab \u5b89\u88c5\u914d\u7f6e\u6559\u7a0b"},"content":{"rendered":"<p>centos gitlab \u5b89\u88c5\u914d\u7f6e\u6559\u7a0b<\/p>\n<p>GitLab \u662f\u4e00\u6b3e\u5f00\u6e90\u7684 Git \u4ed3\u5e93\u7ba1\u7406\u7cfb\u7edf\uff0c\u652f\u6301\u591a\u4eba\u534f\u4f5c\u5f00\u53d1\uff0c\u4ee3\u7801\u4ed3\u5e93\u7684\u7ba1\u7406\u548c\u7248\u672c\u63a7\u5236\u3002GitLab \u81ea\u5e26\u591a\u79cd\u529f\u80fd\uff0c\u6bd4\u5982\u4ee3\u7801\u6258\u7ba1\uff0cCI\/CD\u3001\u95ee\u9898\u8ffd\u8e2a\u7b49\u7b49\u3002\u672c\u6559\u7a0b\u5c06\u4ecb\u7ecd\u5982\u4f55\u5728 CentOS \u4e0a\u5b89\u88c5 GitLab \u670d\u52a1\u5668\u5e76\u8fdb\u884c\u914d\u7f6e\u3002<\/p>\n<p>\u4e00\u3001CentOS \u7cfb\u7edf\u73af\u5883\u51c6\u5907<\/p>\n<ol>\n<li>\u5b89\u88c5\u4f9d\u8d56\uff1aGitLab \u9700\u8981 PostgreSQL \u548c Redis \u4e24\u4e2a\u6570\u636e\u5e93\u652f\u6301\uff0c\u6211\u4eec\u9700\u8981\u5b89\u88c5\u4ed6\u4eec\uff1a<\/li>\n<\/ol>\n<pre># \u5b89\u88c5 PostgreSQL \u548c Redis \nsudo yum install -y postgresql-server postgresql-contrib redis<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<ol>\n<li>\u542f\u52a8 PostgreSQL \u548c Redis \u670d\u52a1\uff1a<\/li>\n<\/ol>\n<pre>sudo systemctl start postgresql \nsudo systemctl start redis<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<ol>\n<li>\u914d\u7f6e PostgreSQL \u6570\u636e\u5e93\uff1aGitLab \u9700\u8981\u4e00\u4e2a\u6570\u636e\u5e93\u6765\u5b58\u50a8\u6570\u636e\uff0c\u6211\u4eec\u9700\u8981\u5728 PostgreSQL \u4e2d\u521b\u5efa\u4e00\u4e2a GitLab \u6570\u636e\u5e93\uff1a<\/li>\n<\/ol>\n<pre>sudo -i -u postgres \npsql<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    <\/p>\n<pre>postgres=# CREATE USER git CREATEDB;\npostgres=# CREATE DATABASE gitlabhq_production OWNER git;\npostgres=# ALTER USER git WITH ENCRYPTED password 'password';\npostgres=# q\nexit<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u4e8c\u3001\u5b89\u88c5 GitLab<\/p>\n<ol>\n<li>\u5b89\u88c5 GitLab\uff1a<\/li>\n<\/ol>\n<pre># \u6dfb\u52a0 GitLab \u6e90\ncurl https:\/\/packages.gitlab.com\/install\/repositories\/gitlab\/gitlab-ee\/script.rpm.sh | sudo bash \nsudo yum install -y gitlab-ee<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<ol>\n<li>\u4fee\u6539 GitLab \u914d\u7f6e\u6587\u4ef6\uff1a<\/li>\n<\/ol>\n<pre>sudo vim \/etc\/gitlab\/gitlab.rb<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<ol>\n<li>\u5982\u4e0b\u4fee\u6539\uff1a<\/li>\n<\/ol>\n<pre>## \u914d\u7f6e GitLab \u7684\u5916\u90e8 URL\nexternal_url 'http:\/\/{YOUR_SERVER_NAME_OR_IP}'\n\n## \u914d\u7f6eSMTP\ngitlab_rails['smtp_enable'] = true\ngitlab_rails['smtp_address'] = \"smtp.qq.com\"\ngitlab_rails['smtp_port'] = 587\ngitlab_rails['smtp_user_name'] = \"your-email@qq.com\" # \u53d1\u9001\u4eba\u90ae\u7bb1\ngitlab_rails['smtp_password'] = \"your-password\" # \u53d1\u9001\u4eba QQ \u90ae\u7bb1\u6388\u6743\u7801\ngitlab_rails['smtp_authentication'] = \"login\"\ngitlab_rails['smtp_enable_starttls_auto'] = true\ngitlab_rails['gitlab_email_from'] = 'your-email@qq.com' # \u53d1\u4ef6\u4eba\u90ae\u7bb1\n\n# \u914d\u7f6e Nginx\nnginx['enable'] = false\n\n#################\n# OAUTH2 CONFIGS #\n#################\ngitlab_rails['omniauth_enabled'] = true\ngitlab_rails['omniauth_allow_single_sign_on'] = true\ngitlab_rails['omniauth_block_auto_created_users'] = false\ngitlab_rails['omniauth_auto_link_ldap_user'] = false\ngitlab_rails['ldap_enabled'] = false\n\n# \u652f\u6301\u4e2d\u6587\ngitlab_workhorse['env'] = {\n\"LANG\" =&gt; \"zh_CN.UTF-8\",\n\"LC_ALL\" =&gt; \"zh_CN.UTF-8\"\n}<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<ol>\n<li>\u4f7f\u66f4\u6539\u751f\u6548\uff1a<\/li>\n<\/ol>\n<pre>sudo gitlab-ctl reconfigure<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u4e09\u3001\u8bbf\u95ee GitLab<\/p>\n<ol>\n<li>\u8bbf\u95ee\u4ee5\u4e0b URL\uff1a<\/li>\n<\/ol>\n<pre>http:\/\/{YOUR_SERVER_NAME_OR_IP}<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<ol>\n<li>\u4f7f\u7528\u9ed8\u8ba4\u7ba1\u7406\u5458\u8bbf\u95ee\uff1a<\/li>\n<\/ol>\n<pre>\u7528\u6237\u540d: root\n\u5bc6\u7801: 5iveL!fe<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u56db\u3001\u5e38\u89c1\u95ee\u9898\u89e3\u51b3<\/p>\n<ol>\n<li>\u5982\u4f55\u542f\u52a8\u3001\u505c\u6b62\u6216\u91cd\u65b0\u914d\u7f6e GitLab\uff1f<\/li>\n<\/ol>\n<pre># \u542f\u52a8\nsudo gitlab-ctl start\n\n# \u505c\u6b62\nsudo gitlab-ctl stop\n\n# \u66f4\u6539\nsudo gitlab-ctl reconfigure<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<ol>\n<li>\u5982\u4f55\u5347\u7ea7 GitLab \u670d\u52a1\u5668\uff1f<\/li>\n<\/ol>\n<pre>## 1. \u5347\u7ea7\u8f6f\u4ef6\u6e90\ncurl https:\/\/packages.gitlab.com\/install\/repositories\/gitlab\/gitlab-ee\/script.rpm.sh | sudo bash \n\n## 2. \u5b89\u88c5\u65b0\u7248\nsudo yum install -y gitlab-ee\n\n## 3. \u5728\u66f4\u65b0\u914d\u7f6e\u6587\u4ef6\u548c\u5347\u7ea7\u540e\u91cd\u65b0\u914d\u7f6e\nsudo gitlab-ctl reconfigure<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u4e94\u3001\u603b\u7ed3<\/p>\n<p>\u672c\u6587\u4ecb\u7ecd\u4e86\u5728 CentOS \u7cfb\u7edf\u4e2d\u5b89\u88c5\u548c\u914d\u7f6e GitLab \u670d\u52a1\u5668\u7684\u6b65\u9aa4\u3002\u5e0c\u671b\u672c\u6587\u53ef\u4ee5\u5e2e\u52a9\u5f00\u53d1\u8005\u5728\u81ea\u5df1\u7684\u670d\u52a1\u5668\u4e0a\u8fdb\u884c Git \u4ed3\u5e93\u7684\u7ba1\u7406\u548c\u7248\u672c\u63a7\u5236\u3002<\/p>\n<p>\u4ee5\u4e0a\u5c31\u662f\u8be6\u89e3CentOS GitLab \u5b89\u88c5\u914d\u7f6e\u6559\u7a0b\u7684\u8be6\u7ec6\u5185\u5bb9\uff0c\u66f4\u591a\u8bf7\u5173\u6ce8\u7c73\u4e91\u5176\u5b83\u76f8\u5173\u6587\u7ae0\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>centos gitlab \u5b89\u88c5\u914d\u7f6e\u6559\u7a0b GitLab \u662f\u4e00\u6b3e\u5f00\u6e90\u7684 Git \u4ed3\u5e93\u7ba1\u7406\u7cfb\u7edf\uff0c\u652f\u6301\u591a\u4eba\u534f\u4f5c\u5f00\u53d1\uff0c\u4ee3\u7801\u4ed3\u5e93\u7684\u7ba1\u7406\u548c\u7248\u672c\u63a7\u5236\u3002GitLab \u81ea\u5e26\u591a\u79cd\u529f\u80fd\uff0c\u6bd4\u5982\u4ee3\u7801\u6258\u7ba1\uff0cCI\/CD\u3001\u95ee\u9898\u8ffd\u8e2a\u7b49\u7b49\u3002\u672c\u6559\u7a0b\u5c06\u4ecb\u7ecd\u5982\u4f55\u5728 CentOS \u4e0a\u5b89\u88c5 GitLab \u670d\u52a1\u5668\u5e76\u8fdb\u884c\u914d\u7f6e\u3002 \u4e00\u3001CentOS \u7cfb\u7edf\u73af\u5883\u51c6\u5907 \u5b89\u88c5\u4f9d\u8d56\uff1aGitLab \u9700\u8981 PostgreSQL \u548c Redis \u4e24\u4e2a\u6570\u636e\u5e93\u652f\u6301\uff0c\u6211\u4eec\u9700\u8981\u5b89\u88c5\u4ed6\u4eec\uff1a # \u5b89\u88c5 PostgreSQL \u548c Redis sudo yum install -y postgresql-server postgresql-contrib redis \u767b\u5f55\u540e\u590d\u5236 \u542f\u52a8 PostgreSQL \u548c Redis \u670d\u52a1\uff1a sudo systemctl start postgresql sudo systemctl start redis \u767b\u5f55\u540e\u590d\u5236 \u914d\u7f6e PostgreSQL \u6570\u636e\u5e93\uff1aGitLab \u9700\u8981\u4e00\u4e2a\u6570\u636e\u5e93\u6765\u5b58\u50a8\u6570\u636e\uff0c\u6211\u4eec\u9700\u8981\u5728 PostgreSQL \u4e2d\u521b\u5efa\u4e00\u4e2a GitLab \u6570\u636e\u5e93\uff1a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16],"tags":[],"class_list":["post-18864","post","type-post","status-publish","format-standard","hentry","category-16"],"_links":{"self":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/18864","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/comments?post=18864"}],"version-history":[{"count":0,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/18864\/revisions"}],"wp:attachment":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/media?parent=18864"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/categories?post=18864"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/tags?post=18864"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}