设为首页 收藏本站
查看: 992|回复: 0

[经验分享] Centos安装gitlab汉化版

[复制链接]

尚未签到

发表于 2018-9-19 10:48:06 | 显示全部楼层 |阅读模式
  一、修改Yum源为阿里云提高下载速度
12mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backupwget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo  二、安装依赖软件包
1yum -y install libicu-devel patch gcc-c++ readline-devel zlib-devel libffi-devel openssl-devel make autoconf automake libtool bison libxml2-devel libxslt-devel libyaml-devel zlib-devel openssl-devel cpio expat-devel gettext-devel curl-devel perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker cmake pcre-devel  三、安装Git

  •   查看当前git版本
1git --version

  •   如果git版本小于1.7.10则先卸载
1rpm -e --nodeps git

  •   下载最新git源码包并编译安装
123456789cd /App/src/wget https://www.kernel.org/pub/software/scm/git/git-2.6.2.tar.xz tar Jxf git-2.6.2.tar.xzcd git-2.6.2./configure --prefix=/App/gitmake && make install # 修改环境变量echo 'export PATH=/App/git/bin:$PATH' >> /etc/profile  四、安装Python
123456789cd /App/src/wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tar.xztar Jxf Python-2.7.10.tar.xzcd Python-2.7.10./configure --prefix=/App/pythonmake && make install # 修改环境变量echo 'export PATH=/App/python/bin:$PATH' >> /etc/profile  五、安装Ruby
123456789cd /App/src/wget https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.3.tar.gz tar zxf ruby-2.2.3.tar.gzcd ruby-2.2.3./configure --prefix=/App/ruby --disable-install-rdocmake && make install # 修改环境变量echo 'export PATH=/App/ruby/bin:$PATH' >> /etc/profile

  •   退出shell重新登录后修改RubyGems 镜像为淘宝提高下载速度
12gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/ gem install bundler --no-ri --no-rdoc  六、安装Go
1234567891011121314cd /App/src/curl -O --progress https://storage.googleapis.com/golang/go1.5.1.linux-amd64.tar.gz tar zxf go1.5.1.linux-amd64.tar.gzmv go /App/ # 修改环境变量cat >> /etc/profile > /etc/profile

  •   添加Redis配置 /App/redis/redis.conf
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152daemonize yespidfile /App/redis/redis.pidport 6379tcp-backlog 60000timeout 0tcp-keepalive 60loglevel warninglogfile "/App/redis/redis.log"syslog-enabled nodatabases 16save 900 1save 300 10save 60 10000stop-writes-on-bgsave-error yesrdbcompression yesrdbchecksum yesdbfilename dump.rdbdir /App/redisslave-serve-stale-data yesrepl-diskless-sync yesrepl-diskless-sync-delay 5repl-ping-slave-period 10repl-timeout 60repl-disable-tcp-nodelay noslave-priority 100maxclients 60000maxmemory-policy noevictionappendonly noappendfilename "appendonly.aof"appendfsync everysecno-appendfsync-on-rewrite noauto-aof-rewrite-percentage 100auto-aof-rewrite-min-size 64mbaof-load-truncated yeslua-time-limit 5000slowlog-log-slower-than 10000slowlog-max-len 128latency-monitor-threshold 0hash-max-ziplist-entries 512hash-max-ziplist-value 64list-max-ziplist-entries 512list-max-ziplist-value 64set-max-intset-entries 512zset-max-ziplist-entries 128zset-max-ziplist-value 64hll-sparse-max-bytes 3000activerehashing yesclient-output-buffer-limit normal 0 0 0client-output-buffer-limit slave 256mb 64mb 60client-output-buffer-limit pubsub 32mb 8mb 60hz 10aof-rewrite-incremental-fsync yes

  •   启动Redis
1/App/redis/bin/redis-server /App/redis/redis.conf  八、安装Node.js
1234567cd /App/src/wget https://nodejs.org/dist/v4.2.1/node-v4.2.1-linux-x64.tar.xztar Jxf node-v4.2.1-linux-x64.tar.xzmv node-v4.2.1-linux-x64 /App/nodejs # 修改环境变量echo 'export PATH=/App/nodejs/bin:$PATH' >> /etc/profile  九、安装MariaDB
12345678910111213141516171819cd /App/src/wget http://mirrors.ctyun.cn/MariaDB/mariadb-10.0.21/source/mariadb-10.0.21.tar.gz tar zxf mariadb-10.0.21.tar.gzcd mariadb-10.0.21cmake . \-DCMAKE_BUILD_TYPE:STRING=Release \-DCMAKE_INSTALL_PREFIX:PATH=/App/mariadb \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_EMBEDDED_SERVER:BOOL=OFF \-DWITH_UNIT_TESTS:BOOL=OFF \-LAH make && make installcp support-files/mysql.server /etc/init.d/mariadbchmod u+x /etc/init.d/mariadb # 修改环境变量echo 'export PATH=/App/mariadb/bin:$PATH' >> /etc/profile

  •   修改MariaDB配置 /etc/my.cnf
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283[client]port = 3306socket = /tmp/mysql.sock[mysqld]user = mysqlport = 3306socket = /tmp/mysql.sockserver-id = 1log-bin = bin.loglog-error = error.logpid-file = mysql.pidlong_query_time = 1slow_query_logslow_query_log_file = slow.logbinlog_cache_size = 4Mbinlog_format = mixedmax_binlog_cache_size = 16Mmax_binlog_size = 1Gexpire_logs_days = 30ft_min_word_len = 4back_log = 4096max_allowed_packet = 64Mmax_connections = 65536max_connect_errors = 100join_buffer_size = 1Mread_buffer_size = 1Mread_rnd_buffer_size = 1Msort_buffer_size = 1Mquery_cache_size = 64Mtable_open_cache = 2048thread_cache_size = 256max_heap_table_size = 64Mtmp_table_size = 64Mthread_stack = 192Kconnect_timeout = 600interactive_timeout = 600wait_timeout = 600thread_concurrency = 8local-infile = 0skip-show-databaseskip-name-resolveskip-external-locking#*** MyISAMkey_buffer_size = 512Mbulk_insert_buffer_size = 64Mmyisam_sort_buffer_size = 32Mmyisam_max_sort_file_size = 1Gmyisam_repair_threads = 1myisam_recover#*** INNODBinnodb_buffer_pool_size = 4Ginnodb_additional_mem_pool_size = 32Minnodb_data_file_path = ibdata:32M:autoextendinnodb_read_io_threads = 8innodb_write_io_threads = 8innodb_file_per_table = 1innodb_flush_log_at_trx_commit = 2innodb_lock_wait_timeout = 120innodb_log_buffer_size = 8Minnodb_log_file_size = 256Minnodb_log_files_in_group = 3innodb_max_dirty_pages_pct = 10innodb_thread_concurrency = 16#innodb_force_recovery = 4#*** Replication Slave#read-only#skip-slave-startrelay-log = relay.loglog-slave-updates[mysqldump]quickmax_allowed_packet = 32M[mysql]no-auto-rehash[myisamchk]key_buffer_size = 512Msort_buffer_size = 512Mread_buffer = 8Mwrite_buffer = 8M[mysqlhotcopy]interactive-timeout[mysqld_safe]open-files-limit = 60000

  •   初始化MariaDB
12useradd -s /bin/false -M mysql/App/mariadb/scripts/mysql_install_db --basedir=/App/mariadb --datadir=/App/mariadb/data --user=mysql

  •   启动MariaDB
1/etc/init.d/mariadb start

  •   登录MariaDB创建数据库并授权
1mysql -uroot -p12345CREATE DATABASE `gitlabhq_production`;GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, CREATE TEMPORARY TABLES, DROP, INDEX, ALTER, LOCK TABLES ON `gitlabhq_production`.* TO 'git'@'127.0.0.1' IDENTIFIED BY 'g1T#453eri';GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, CREATE TEMPORARY TABLES, DROP, INDEX, ALTER, LOCK TABLES ON `gitlabhq_production`.* TO 'git'@'localhost' IDENTIFIED BY 'g1T#453eri';FLUSH PRIVILEGES;QUIT;  十、安装GitLab
1useradd --system -s /bin/bash --comment 'GitLab' -m -d /home/git git

  •   修改git家目录权限否则运行报权限错误
1chmod 755 /home/git

  •   切换至git用户
12su - gitgit clone https://gitlab.com/larryli/gitlab.git -b 8-0-zh gitlab

  •   配置GitLab
12cd gitlab/cp config/gitlab.yml.example config/gitlab.yml

  •   修改 gitlab.yml 配置将行host: localhost 修改为本机IP地址或者域名如为域名确保域名映射本机地址需修改/etc/hosts文件。
  •   修改 gitlab.yml 配置git路径行 bin_path: /usr/bin/git 为 bin_path: /App/git/bin/git
  •   新建卫星目录拷贝示例文件
123456789mkdir -p /home/git/gitlab-satellitescp config/secrets.yml.example config/secrets.ymlchmod 0600 config/secrets.ymlchmod -R u+rwX,go-w log/chmod 0750 /home/git/gitlab/public/uploadscp config/unicorn.rb.example config/unicorn.rbcp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rbgit config --global core.autocrlf inputcp config/resque.yml.example config/resque.yml

  •   修改Redis相关配置 config/resque.yml 文件 production: unix:/var/run/redis/redis.sock 为 production: redis://127.0.0.1:6379
  •   数据库配置
1cp config/database.yml.mysql config/database.yml

  •   修改 config/database.yml 前段 PRODUCTION 部分内容 password: "secure password" 修改为password: "连接数据库的密码"
1chmod o-rwx config/database.yml

  •   修改 Gemfile 首行内容 source "https://rubygems.org"  修改为 source "https://ruby.taobao.org"
1bundle install --deployment --without development test postgres aws kerberos  十一、安装GitLab Shell
1bundle exec rake gitlab:shell:install[v2.6.6] REDIS_URL=redis://127.0.0.1:6379 RAILS_ENV=production  十二、安装gitlab-git-http-server
12345cd /home/gitgit clone https://gitlab.com/gitlab-org/gitlab-git-http-server.gitcd gitlab-git-http-servergit checkout 0.3.0make  十三、初始化数据库并激活高级功能
  1
  2
  3
  4
  5
  6
  cd /home/gitlab
  bundle exec rake gitlab:setup RAILS_ENV=production GITLAB_ROOT_PASSWORD=连接密码
  执行结果如下:
  login.......root
  password........giT#453eri
  此为一会的登陆账号密码
  十四、切换为root用户后拷贝服务脚本
12exitcp /home/git/gitlab/lib/support/init.d/gitlab /etc/init.d/  十五、root权限配置Logrotate
1cp /home/git/gitlab/lib/support/logrotate/gitlab /etc/logrotate.d/  十六、检查应用状态
123su - gitcd gitlab/bundle exec rake gitlab:env:info RAILS_ENV=production  十七、编译静态文件
1bundle exec rake assets:precompile RAILS_ENV=production  十八、切换至root用户安装Nginx
123456789101112131415161718192021222324252627282930exitcd /App/src/wget http://nginx.org/download/nginx-1.8.0.tar.gz tar zxf nginx-1.8.0.tar.gzcd nginx-1.8.0./configure \--prefix=/App/nginx \--with-http_stub_status_module \--with-http_gzip_static_module \--without-http_auth_basic_module \--without-http_autoindex_module \--without-http_browser_module \--without-http_empty_gif_module \--without-http_geo_module \--without-http_limit_conn_module \--without-http_limit_req_module \--without-http_map_module \--without-http_memcached_module \--without-http_referer_module \--without-http_split_clients_module \--without-http_ssi_module \--without-http_userid_module \--without-mail_imap_module \--without-mail_pop3_module \--without-mail_smtp_module \--without-poll_module \--without-select_module make && make installuseradd -s /bin/false nginx

  •   修改Nginx配置 /App/nginx/conf/nginx.conf
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118user  nginx nginx;worker_processes  auto; error_log  logs/error.log error; pid        logs/nginx.pid;worker_rlimit_nofile    65536; events{    use epoll;    accept_mutex off;    worker_connections  65536;} http{    include       mime.types;    default_type  text/html;     charset UTF-8;    server_names_hash_bucket_size  128;    client_header_buffer_size      4k;    large_client_header_buffers  4 32k;    client_max_body_size            20m;     open_file_cache max=65536  inactive=60s;    open_file_cache_valid      80s;    open_file_cache_min_uses   1;     log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '                      '$status $body_bytes_sent "$http_referer" '                      '"$http_user_agent" "$http_x_forwarded_for"';     access_log  logs/access.log  main;     sendfile    on;    server_tokens off;     keepalive_timeout  60;     gzip  on;    gzip_min_length 1k;    gzip_buffers  4  64k;    gzip_http_version  1.1;    gzip_comp_level 2;    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;     upstream gitlab     {        server unix:/home/git/gitlab/tmp/sockets/gitlab.socket fail_timeout=0;    }     upstream gitlab-git-http-server     {        server unix:/home/git/gitlab/tmp/sockets/gitlab-git-http-server.socket fail_timeout=0;    }     server {        listen      80;        server_name _;        root        /home/git/gitlab/public;         location /        {            try_files $uri $uri/index.html $uri.html @gitlab;        }         location /uploads/        {            proxy_read_timeout      300;            proxy_connect_timeout   300;            proxy_redirect          off;            proxy_set_header    Host                $http_host;            proxy_set_header    X-Real-IP           $remote_addr;            proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;            proxy_set_header    X-Forwarded-Proto   $scheme;            proxy_set_header    X-Frame-Options     SAMEORIGIN;            proxy_pass http://gitlab;        }         location @gitlab        {            proxy_read_timeout      300;            proxy_connect_timeout   300;            proxy_redirect          off;            proxy_set_header    Host                $http_host;            proxy_set_header    X-Real-IP           $remote_addr;            proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;            proxy_set_header    X-Forwarded-Proto   $scheme;            proxy_set_header    X-Frame-Options     SAMEORIGIN;            proxy_pass http://gitlab;        }         location ~ [-\/\w\.]+\.git\/        {            proxy_read_timeout      300;            proxy_connect_timeout   300;            proxy_redirect          off;            proxy_buffering off;            proxy_set_header    Host                $http_host;            proxy_set_header    X-Real-IP           $remote_addr;            proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;            proxy_set_header    X-Forwarded-Proto   $scheme;            proxy_pass http://gitlab-git-http-server;        }         location ~ ^/(assets)/        {            root /home/git/gitlab/public;            gzip_static on;            expires max;            add_header Cache-Control public;        }         error_page 502 /502.html;    }}  十九、SMTP相关配置

  •   复制smtp示例配置
1cp /home/git/gitlab/config/initializers/smtp_settings.rb.sample /home/git/gitlab/config/initializers/smtp_settings.rb  修改 smtp_settings.rb 将 enable_starttls_auto: true 修改为 enable_starttls_auto: false openssl_verify_mode: 'peer' 删除或添加 # 注释其余按照自己的邮箱正常配置即可。(注意使用腾讯企业邮的port是25,不是465)
  二十、启动GitLab实例
  1
  2
  启动nginx
  /etc/init.d/gitlab start
  二十一、浏览器打开登录页面
DSC0000.jpg

  二十二、输入账号密码登录
DSC0001.jpg



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-594172-1-1.html 上篇帖子: Centos7安装gitlab-linux 下篇帖子: gitlab的启动报错问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表