操作系统:centos 6.5

关闭selinux

  1. # 修改/etc/selinux/config 文件
  2. SELINUX=enforcing改为SELINUX=disabled ,然后重启电脑
  3. # sestatus -v 查看selinux状态

步骤:

  1. 1、安装软件包及解决依赖项
  2. 2、系统用户
  3. 3Ruby环境
  4. 4Go
  5. 5、数据库(Mysql/Postgresql)
  6. 6Redis
  7. 7Gitlab-CE
  8. 8Nginx

 1-安装软件包及解决依赖项

  1. 添加EPEL源:
  2.  
  3. # 下载EPEL的GPG KEY,导入到系统中
  4. wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 https://mirrors.tuna.tsinghua.edu.cn/epel/RPM-GPG-KEY-EPEL-6
  5. rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
  6. # 安装`epel-release-latest-6.noarch.rpm`包,启用EPEL
  7. rpm -Uvh http://mirrors.ustc.edu.cn/epel/epel-release-latest-6.noarch.rpm
  8.  
  9. yum groupinstall "Development tools"
  10. yum install gcc autoconf cmake unzip vim libcurl-devel zlib-devel curl-devel expat-devel gettext-devel openssl-devel perl-devel nodejs libicu-devel wget curl
  11.  
  12. 安装git
  13. 如果已经用yum安装过git,并且版本低于2.7.4,要先卸载掉旧的版本
  1. yum remove git

  使用源码编译安装git

  1. mkdir /tmp/git && cd /tmp/git
  2. curl -O --progress https://www.kernel.org/pub/software/scm/git/git-2.7.4.tar.gz
  3. tar -xzf git-2.7.4.tar.gz
  4. cd git-2.7.4
  5. ./configure
  6. make prefix=/usr/local all
  7. # 安装到/usr/local/bin
  8. make prefix=/usr/local install
  9. # 验证git版本号
  10. git --version
  11. #查看git安装路径
  12. which git
  13. # 编辑 config/gitlab.yml (第5步中), 修改 git 路径为 /usr/local/bin/git
  14.  

 2-添加系统用户

  1. 我们添加一个用来管理运行Gitlab的用户git
  2.  
  3. adduser -c 'Gitlab' -s /bin/bash git
  4.  
  5. # 修改git用户的环境变量PATH,以root用户运行
  6. visudo
  7. # 找到下面一行
  8. Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
  9. #修改为
  10. Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:

 3-安装ruby环境

  1. Gitlab生产环境使用Ruby版本管理工具RVM,rbenv或者chruby常常会带来很多疑难杂症.比如Gitlab-shell版本管理器调用OpenSSH的功能以防止越过ssh对仓库进行pullpush操作.而前面提到的三个版本管理器不支持这样的功能,所以我们强烈建议大家按照下面的方式来安装Ruby.
  2.  
  3. 1- 如果系统上存在旧的Ruby1.8,先删除掉:
  4.  
  5. yum remove ruby
  6.  
  7. 2-下载Ruby源码,编译安装:
  8.  
  9. mkdir /tmp/ruby && cd /tmp/ruby
  10. # 这里替换官方文档的下载地址为mirrors.ustc.edu.cn提供的镜像地址
  11. curl -O --progress http://mirrors.ustc.edu.cn/ruby/2.1/ruby-2.1.8.tar.gz
  12. tar xzf ruby-2.1.8.tar.gz
  13. cd ruby-2.1.8
  14. ./configure --disable-install-rdoc
  15. make && make install
  16.  
  17. 3-国内使用RubyGemBundler必须要做的事情:
  18.  
  19. # 修改git用户gem安装源为中科大源
  20. $ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
  21. # 确保git用户当前gems源为中科大源
  22. $ gem sources -l
  23. *** CURRENT SOURCES ***
  24.  
  25. https://gems.ruby-china.org/
  26.  
  27. 4-安装bundle
  28.  
  29. gem install bundler --no-ri --no-rdoc
  30. # 修改bundler的源为中科大源
  31. sudo -u git -H bundle config mirror.https://rubygems.org https://gems.ruby-china.org/

4-安装GO 

  1. Gitlab8.0开始,GitHTTP请求由gitlab-git-http-server来处理.我们需要Go编译器来安装gitlab-git-http-server.下面一系列的指令都将假定你用的是64位的Linux系统.你也可以在GoLang官方网站下载其他平台的Go编译器.
  2.  
  3. $ mkdir /tmp/go && cd /tmp/go
  4. $ curl -O --progress http://www.golangtc.com/static/go/1.5.3/go1.5.3.linux-amd64.tar.gz
  5. $ tar -C /usr/local -xzf go1.5.3.linux-amd64.tar.gz
  6. $ sudo ln -sf /usr/local/go/bin/{go,godoc,gofmt} /usr/local/bin/
  7. $ rm go1.5.3.linux-amd64.tar.gz
  8. #验证go是否安装正确
  9. $ go version
  10. go version go1.5.3 linux/amd64

 5-安装数据库

  1. 这里我选择安装的是MySQL5.6
  2. 之前遇到过一个事情就是我这里是源码编译安装的MySQL5.6 但是到下面安装Gems包的时候会报错,其实是
  3. MySQL-devel等依赖包没有安装上,这个时候我们可以选择把MySQL5.6相关的依赖给装上
  4.  
  5. 这里我就偷懒一下,我直接选择yum安装
  6. rpm -ivh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
  7. yum install mysql mysql-server mysql-devel -y
  8. service mysqld start
  9. mysql -u root -p
  10. mysql> CREATE USER 'git'@'localhost' IDENTIFIED BY '$password';
  11. mysql> SET storage_engine=INNODB;
  12. mysql> SET GLOBAL innodb_file_per_table=1, innodb_file_format=Barracuda, innodb_large_prefix=1;
  13. mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_general_ci`;
  14. mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, CREATE TEMPORARY TABLES, DROP, INDEX, ALTER, LOCK TABLES, REFERENCES ON `gitlabhq_production`.* TO 'git'@'localhost';
  15. mysql> \q
  16. sudo -u git -H mysql -u git -p -D gitlabhq_production

 6-安装redis

  1. 版本要求: redis版本不低于2.8.
  2.  
  3. 添加redis用户和组
  4.  
  5. groupadd redis && useradd -g redis redis -s /sbin/nologin
  6.  
  7. 1- 编译安装redis
  8.  
  9. mkdir /tmp/redis && cd /tmp/redis
  10. curl -O --progress http://download.redis.io/releases/redis-3.0.7.tar.gz
  11. tar zxf redis-3.0.7.tar.gz
  12. cd redis-3.0.7
  13. make && make install
  14. mkdir -p /etc/redis
  15. cp redis.conf /etc/redis
  16.  
  17. 2-修改redis配置
  18.  
  19. cp /etc/redis/redis.conf /etc/redis/redis.conf.orig
  20. # 把'post'设置为0以禁止监听TCP端口
  21. sed 's/^port .*/port 0/' /etc/redis/redis.conf.orig | sudo tee /etc/redis/redis.conf
  22. # 让redis以socket方式启动
  23. echo 'unixsocket /var/run/redis/redis.sock' | sudo tee -a /etc/redis/redis.conf
  24. # 启动守护进程
  25. sed -i 's/daemonize no/daemonize yes/g' /etc/redis/redis.conf
  26. # 创建存放socket的目录
  27. mkdir /var/run/redis
  28. sudo chown redis:redis /var/run/redis
  29. sudo chmod 755 /var/run/redis
  30. # Persist the directory which contains the socket, if applicable
  31. if [ -d /etc/tmpfiles.d ]; then
  32. echo 'd /var/run/redis 0755 redis redis 10d -' | sudo tee -a /etc/tmpfiles.d/redis.conf
  33. fi
  34. # 把git用户加入redis组
  35. sudo usermod -aG redis git
  36. # 下载redis init 脚本
  37. $ curl -L http://packages.gitlab.cc/install/init-script/redis/cenots6/redis-server -o /etc/init.d/redis-server
  38. $ chmod +x /etc/init.d/redis-server
  39.  
  40. 3- 启动Redis
  41.  
  42. # 启动redis服务
  43. $ service redis-server start
  44. # 将redis加入自启动
  45. $ chkconfig redis-server on

7-安装Gitlab-CE

这里我选择安装的是中文版本

  1. cd /home/git
  2. git clone https://gitlab.com/larryli/gitlab.git -b 8-8-zh gitlab
  3.  
  4. 这里我们要是不想把gitlab装在 home路径下的话,我们一开始创建git用户的时候我们可以指定用户的家目录
  5.  
  6. 配置gitlab-ce
  7.  
  8. # 进入gitlab目录
  9. cd /home/git/gitlab
  10.  
  11. # 复制gitlab.yml(Gitlab的主配置文件)
  12. sudo -u git -H cp config/gitlab.yml.example config/gitlab.yml
  13.  
  14. # 修改gitlab.yml
  15. sudo -u git -H vim config/gitlab.yml
  16. ####修改第32行 host: localhost为 host: 你的域名或者ip
  17. ####修改第435行 bin_path: /usr/bin/git 为bin_path: /usr/local/bin/git
  18.  
  19. # 复制 secrets 文件
  20. sudo -u git -H cp config/secrets.yml.example config/secrets.yml
  21. sudo -u git -H chmod 0600 config/secrets.yml
  22.  
  23. # 修改 log/ 和 tmp/ 文件夹权限
  24. sudo chown -R git log/
  25. sudo chown -R git tmp/
  26. sudo chmod -R u+rwX,go-w log/
  27. sudo chmod -R u+rwX tmp/
  28.  
  29. # 修改 tmp/pids/ 个 tmp/sockets/ 文件夹权限
  30. sudo chmod -R u+rwX tmp/pids/
  31. sudo chmod -R u+rwX tmp/sockets/
  32.  
  33. # 创建 public/uploads/ 文件夹
  34. sudo -u git -H mkdir public/uploads/
  35.  
  36. # 修改 public/uploads/ 文件夹权限,只有git用户有访问权限
  37. # now that files in public/uploads are served by gitlab-workhorse
  38. sudo chmod 0700 public/uploads
  39.  
  40. # 修改 CI build traces are stored 文件夹的权限
  41. sudo chmod -R u+rwX builds/
  42.  
  43. # 修改 CI artifacts are stored 文件夹的权限
  44. sudo chmod -R u+rwX shared/artifacts/
  45.  
  46. # 复制 Unicorn 配置文件
  47. sudo -u git -H cp config/unicorn.rb.example config/unicorn.rb
  48.  
  49. # 查询CPU核心数
  50. nproc
  51.  
  52. # 如果你想搭建一个高负载的Gitlab实例,可启用集群模式.
  53. # 修改'worker_processes'参数,至少要跟cpu核心数一样.
  54. # 举例:2G RAM的服务器修改workers数量为3
  55. sudo -u git -H vim config/unicorn.rb
  56.  
  57. # 复制Rack attack 配置文件
  58. sudo -u git -H cp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb
  59.  
  60. # Configure Git global settings for git user
  61. # 'autocrlf' is needed for the web editor
  62. sudo -u git -H git config --global core.autocrlf input
  63.  
  64. # Disable 'git gc --auto' because GitLab already runs 'git gc' when needed
  65. sudo -u git -H git config --global gc.auto 0
  66.  
  67. # 复制 Redis 连接配置文件
  68. sudo -u git -H cp config/resque.yml.example config/resque.yml
  69.  
  70. # 如果之前修改过redis socket的路径,在这个配置文件里面修改为当前的路径.
  71. sudo -u git -H vim config/resque.yml

 8-修改GitLab DB 设置

  1. # 此命令仅针对PostgreSQl:
  2. sudo -u git cp config/database.yml.postgresql config/database.yml
  3. # 如果使用Mysql,执行下面命令
  4. sudo -u git cp config/database.yml.mysql config/database.yml
  5.  
  6. # 以下修改针对MySQL和远程PostgreSQL:
  7. # 修改username/password.
  8. # 生产环境只需要修改第一部分即可.
  9. # 修改'secure password' 为你设置的密码
  10. # 密码字段可以使用"双引号"
  11. sudo -u git -H vim config/database.yml
  12.  
  13. # PostgreSQL MySQL都适用:
  14. # 修改database.yml的权限,确保git用户可以读取该文件.
  15. sudo -u git -H chmod o-rwx config/database.yml

 9-安装Gems包

  1. 这个步骤是很多新手头疼的问题,不过你只要严格按照本文关于Ruby环境的搭建来做.还是可以保证你顺利的安装下来的.
  2.  
  3. Note: bundler1.5.2起,你可以使用bundle install -jN(N就是cpu核心数)安装Gems,速度比之前要快大约60%.详细的内容可以点此处查看.不过首先要确保你的bundler版本>=1.5.2(运行bundle -v查看).
  4.  
  5. ####一定要注意选择自己用的数据库的命令
  6. # PostgreSQL (note, the option says "without ... mysql")
  7. sudo -u git -H bundle install --deployment --without development test mysql aws kerberos
  8.  
  9. # 如果使用 MySQL,执行下面的命令 (note, the option says "without ... postgres")
  10. sudo -u git -H bundle install --deployment --without development test postgres aws kerberos

 10-安装Gitlab-shell

  1. GitLab Shell是专为GitLab开发的ssh访问和仓库管理的软件.
  2.  
  3. # 修改gitlab 安装 gitlab-shell的rake任务脚本
  4. sudo -u git -H sed -i 's/https:\/\/gitlab.com\/gitlab-org\/gitlab-shell.git/https:\/\/git.oschina.net\/qiai365\/gitlab-shell.git/g' /home/git/gitlab/lib/tasks/gitlab/shell.rake
  5.  
  6. # 运行安装gitlab shell的任务 (根据自己的redis安装情况修改`REDIS_URL`),这里如果你事先没有clone gitlab-shell的仓库,就会自动clone官方的仓库进行安装:
  7. sudo -u git -H bundle exec rake gitlab:shell:install REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=production
  8.  
  9. # 默认情况下,gitlab-shell的配置是根据Gitlab的配置生产的.
  10. # 你可以运行下面的命令查看和修改gitlab-shell的配置:
  11. sudo -u git -H vim /home/git/gitlab-shell/config.yml
  12.  
  13. Note: Make sure your hostname can be resolved on the machine itself by either a proper DNS record or an additional line in /etc/hosts (“127.0.0.1 hostname”). This might be necessary for example if you set up GitLab behind a reverse proxy. If the hostname cannot be resolved, the final installation check will fail with Check GitLab API access: FAILED. code: and pushing commits will be rejected with “[remote rejected] master -> master (hook declined)”.
  14.  
  15. 安装成功如图所示:

11-安装gitlab-workhorse

  1. cd /home/git
  2. sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-workhorse.git
  3. cd gitlab-workhorse
  4. sudo -u git -H git checkout v0.7.1
  5. sudo -u git -H make

12-初始化数据库,激活高级特性

  1. cd /home/git/gitlab
  2.  
  3. sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production
  4.  
  5. # 输入 'yes' 以创建数据库表
  6.  
  7. # 当看到 'Administrator account created:' 表示已经安装完成

安全设置 secrets.yml

secrets.yml文件为每个会话和安全变量存储密钥.把这个文件备份到别的地方,但是不要和数据库备份放在一块,否则你的数据库备份损坏会导致这个文件丢失.

安装Gitlab init脚本

  1. sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab
  2. #复制下面这个配置文件,如果你的gitlab不是安装在/home/git/gitlab目录,根据自己情况修改这个文件。
  3. sudo cp lib/support/init.d/gitlab.default.example /etc/default/gitlab

设置GItlab为自启动

  1. chkconfig gitlab on

安装Logrotate

  1. sudo cp lib/support/logrotate/gitlab /etc/logrotate.d/gitlab

检查GitLab环境配置

  1. sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production

13-生成GitLab前端资源

  1. sudo -u git -H bundle exec rake assets:precompile RAILS_ENV=production
  2. 启动GitLab
  3.  
  4. sudo service gitlab start
  5. # 或者
  6. sudo /etc/init.d/gitlab restart
  7.  
  8. 再检查一次Gitlab的所有组件
  9.  
  10. sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
  11. # 如果上面的检查有错误,按照提示修复下,再重启GitLab即可.
  12.  
  13. 通过修改/home/git/gitlab/config/unicorn.rblisten端口,然后重启gitlab服务,就可以直接访问服务器ip加端口来访问gitlab

14-nginx 的反向代理

  1. Nginx的安装
  2.  
  3. 推荐使用nginx官方提供的packages。详细内容请查看官方文档
  4. Centos上的安装方法
  5.  
  6. # 创建/etc/yum.repos.d/nginx.repo
  7. touch /etc/yum.repos.d/nginx.repo
  8.  
  9. # 编辑nginx.repo,把下面的内容写入;
  10. # 注意修改OS和OSRELEASE,如centos6则把OS改成centos, OSRELEASE改成6;
  11. [nginx]
  12. name=nginx repo
  13. baseurl=http://nginx.org/packages/mainline/OS/OSRELEASE/$basearch/
  14. gpgcheck=
  15. enabled=
  16.  
  17. #更新yum缓存并安装nginx
  18. yum update
  19. yum install -y nginx
  20.  
  21. 使用nginx代理gitlab-workhorse.socket,并绑定域名访问GitLab
  22.  
  23. # 复制gitlab的nginx配置文件到nginx的conf.d目录
  24. cp /home/git/gitlab/lib/support/nginx/gitlab /etc/nginx/conf.d/gitlab
  25.  
  26. #修改gitlab的nginx配置文件
  27. vim /etc/nginx/conf.d/gitlab
  28. 找到server_name YOUR_SERVER_FQDN,将YOUR_SERVER_FQDN修改为你的域名,如demo.gitlab,cc;
  29. # 修改nginx.conf,引入gitlab的nginx配置文件
  30. vim /etc/nginx/nginx.conf
  31.  
  32. /etc/nginx/nginx.conf
  33. ……
  34. include /etc/nginx/conf.d/*.conf;
  35. include /etc/nginx/conf.d/gitlab; #在最后一个大括号上面加入这段
  36. }
  37.  
  38. # 修改/home/git/目录的权限
  39. sudo chmod 755 /home/git/
  40.  
  41. # 修改gitlab.yml
  42. vim /home/git/gitlab/config/gitlab.yml
  43. 找到 host: ,修改为host: demo.gitlab.cc
  44.  
  45. # 重启nginx
  46. service nginx restart

15-代码更新

  1. 修改Github上的代码,然后更新到服务器上
  2.  
  3. cd /home/git/gitlab/
  4.  
  5. git fetch origin
  6. git merge origin/--zh
  7.  
  8. # 重启 gitlab
  9. service gitlab restart

16-备份恢复

  1. Gitlab 备份
  2.  
  3. 官网的备份说明
  4.  
  5. https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/raketasks/backup_restore.md
  6. 查看备份设置
  7.  
  8. vim /home/git/gitlab/config/gitlab.yml
  9.  
  10. 检查Backup Settings设置项
  11. 默认情况下,备份文件是存放在/home/git/gitlab/tmp/backups/
  12. 执行备份
  13.  
  14. sudo service gitlab stop # 先停止Gitlab,可以不暂停
  15. cd /home/git/gitlab/
  16. sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production
  17.  
  18. 执行完成后,会在/home/git/gitlab/tmp/backups/目录下创建一个备份俄文件,以时间戳_gitlab_backup命名如 1417040627_gitlab_backup.tar
  19. 重新启动
  20.  
  21. sudo service gitlab start
  22. sudo service nginx restart
  23.  
  24. 还原
  25.  
  26. 需要给其他用户配置读写执行的权限
  27.  
  28. chmod o+wrx /home/git/.ssh/authorized_keys.lock
  29.  
  30. 否则会出现如下错误,是由于没有权限
  31. /home/git/gitlab-shell/lib/gitlab_keys.rb::in `initialize’: Permission denied @ rb_sysopen - /home/git/.ssh/authorized_keys.lock (Errno::EACCES)
  32.  
  33. 需要使用 git 用户来执行,否则会没有权限操作 git 目录下的文件,timestamp_of_backup为时间戳如
  34.  
  35. sudo service gitlab stop
  36. cd /home/git/gitlab/
  37. sudo -u git -H bundle exec rake gitlab:backup:restore BACKUP=timestamp_of_backup RAILS_ENV=production
  38.  
  39. 如果是从全新部署的 gitlab 还原,需要执行这一步
  40.  
  41. sudo -u git -H bundle exec rake gitlab:satellites:create RAILS_ENV=production
  42.  
  43. 重启 gitlab
  44.  
  45. sudo service gitlab start
  46. sudo service nginx restart
  47.  
  48. sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
  49.  
  50. 设置自动备份
  51.  
  52. sudo service gitlab stop;
  53. cd /home/git/gitlab;
  54. sudo -u git -H editor config/gitlab.yml;
  55. # Enable keep_time in the backup section to automatically delete old backups
  56.  
  57. keep_time参数默认是604800(单位是秒),因此会保留最近7天内的备份
  58.  
  59. sudo -u git crontab -e # Edit the crontab for the git user
  60.  
  61. 将如下内容添加到文件末尾
  62.  
  63. # Create a full backup of the GitLab repositories and SQL database every day at 2am
  64. * * * cd /home/git/gitlab && PATH=/usr/local/bin:/usr/bin:/bin bundle exec rake gitlab:backup:create RAILS_ENV=production CRON=
  65.  
  66. 重新启动
  67. sudo service gitlab start;
  68. sudo service nginx restart;
  69. sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production;
  70.  
  71. 要是忘记管理员密码的话:
  72. 参考:
  73. https://www.nitrohsu.com/gitlab-reset-administrator-password.html
  74. # Gitlab 安装路径
  75. cd /home/git/gitlab
  76. # 进入Rails控制台
  77. sudo -u git -H bundle exec rails console production
  78. 进入控制台,如果知道需要修改用户的邮箱,使用如下,直接修改
  79. user = User.find_by(email: 'admin@example.com')
  80. user.password = 'secret_password'
  81. user.password_confirmation = 'secret_password'
  82. user.save
  83. 如果不知道具体邮箱,可以通过find来查找邮箱
  84.  
  85. user = User.find()

参考链接:

https://bbs.gitlab.com.cn/topic/35/gitlab-ce-8-7-%E6%BA%90%E7%A0%81%E5%AE%89%E8%A3%85%E6%89%8B%E5%86%8C-centos6-rehl6

https://www.abcdocker.com/abcdocker/2041

http://www.restran.net/2016/07/06/gilab-source-install-in-centos7/

持续集成(1)gitlab的安装的更多相关文章

  1. 持续集成之④:GitLab触发jenkins构建项目

    持续集成之④:GitLab触发jenkins构建项目 一:目的为在公司的测试环境当中一旦开发向gitlab仓库提交成功代码,gitlab通知jenkins进行构建项目.代码质量测试然后部署至测试环境, ...

  2. 老李分享:持续集成学好jenkins之安装

    老李分享:持续集成学好jenkins之安装   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq: ...

  3. [原创]CI持续集成系统环境--Gitlab+Gerrit+Jenkins完整对接

    近年来,由于开源项目.社区的活跃热度大增,进而引来持续集成(CI)系统的诞生,也越发的听到更多的人在说协同开发.敏捷开发.迭代开发.持续集成和单元测试这些拉风的术语.然而,大都是仅仅听到在说而已,国内 ...

  4. 手把手详解持续集成之GitLab CI/CD

    一.环境准备 首先需要有一台 GitLab 服务器,然后需要有个项目:这里示例项目以 Spring Boot 项目为例,然后最好有一台专门用来 Build 的机器,实际生产中如果 Build 任务不频 ...

  5. Jenkins持续集成介绍及插件安装版本更新演示(一)--技术流ken

    Jenkins介绍 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins功能包括: ...

  6. CI持续集成系统环境--Gitlab+Gerrit+Jenkins完整对接

    原文地址https://www.cnblogs.com/kevingrace/p/5651447.html 近年来,由于开源项目.社区的活跃热度大增,进而引来持续集成(CI)系统的诞生,也越发的听到更 ...

  7. 一步一步构建iOS持续集成:Jenkins+GitLab+蒲公英+FTP

    什么是持续集成 持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动化测试)来 ...

  8. 【持续集成】GitLab CI + Docker 实现持续集成

    GitLab CI + Docker 实现持续集成 一.持续集成(Continuous Integration, CI)的基本概念 概述 在传统软件的开发中,代码的集成工作通常是在所有人都将工作完成后 ...

  9. DevOps之持续集成Jenkins+Gitlab

    一.什么是DevOps DevOps(英文Development(开发)和Operations(技术运营)的组合)是一组过程.方法与系统的统称,DevOps是一组最佳实践强调(开发.运维.测试)在应用 ...

  10. 持续集成之三:Linux安装Jenkins

    环境 Red Hat Enterprise Linux Server release 7.3 (Maipo) jdk1.7.0_80       apache-tomcat-7.0.90 jenkin ...

随机推荐

  1. Knockout学习之监控数组

    监控数组 单个监控属性.组合属性虽然可以解决大部分的问题,但是还有很多是他们无法做到的,比如在一组数据中进行移除添加,所以这节我们将要学习监控数组. 由于监控属性是由ko的observable构造,那 ...

  2. Lotusscript统计在线用户数

    使用notessession的SendConsoleCommand方法向服务器控制台发送“show inetusers”命令,该命令返回一个结果(字符串),字符串类似如下: admin   192.1 ...

  3. Linux经常使用命令-权限管理命令-其它权限管理命令

    命令名称:chown 英文: change file ownership 命令所在路径:/bin/chown 语法:chown [用户][文件或者文件夹] 功能描写叙述:改变文件或者文件夹的全部者 范 ...

  4. 自己开发Visual studio插件-一个nvelocity高亮插件

    首先,有一个项目用到了nvelocity模板引擎,但是用vs开发模板的时候,没有高亮效果,所以非常不方便,鉴于这个,于是有了自己开发插件的念头,但是在vs sdk开发上面,这方面的资料真是少之又少,网 ...

  5. SQL之group by 和 having

    转自:mysql必知必会——GROUP BY和HAVING GROUP BY语法可以根据给定数据列的每个成员对查询结果进行分组统计,最终得到一个分组汇总表. select子句中的列名必须为分组列或列函 ...

  6. 【DeepLearning】Exercise: Implement deep networks for digit classification

    Exercise: Implement deep networks for digit classification 习题链接:Exercise: Implement deep networks fo ...

  7. OAuth的机制原理讲解及开发流程(转)

    1.OAuth的简述 OAuth(Open Authorization,开放授权)是为用户资源的授权定义了一个安全.开放及简单的标准,第三方无需知道用户的账号及密码,就可获取到用户的授权信息,并且这是 ...

  8. 【struts2】<s:url>标签

    <s:url>标签一般和超链接 <a>一起使用,用于带多个参数. <a href=" <s:url action=""> < ...

  9. android studio 修改gradle引用本地文件

    如何使用本地gradle修改gradle-wrapper.properties文件下的 distributionUrl=file:///Volumes/MAC-WORK/download/gradle ...

  10. win7下 go语言开发环境搭建(64bit)

    Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全.支持并行进程 ...