5. 设置 web server
应用可以用下一个命令行动:
# 用于测试目的 sudo -u gitlab bundle exec rails s -e production # 用于守护进程 sudo -u gitlab bundle exec rails s -e production -d默认登录用户名及密码:
笔者注:记住这个用户名和密码,在通过浏览器登录gitlab工程主页的时候有用。
admin@local.host 5iveL!fe 6. 运行 Resque 进程(用于处理工作队列) # 手动启动 sudo -u gitlab bundle exec rake environment resque:work QUEUE=* RAILS_ENV=production BACKGROUND=yes # GitLab 启动脚本 sudo -u gitlab ./resque.sh # 如果你使用 root 运行此脚本,会导致 /home/gitlab/gitlab/tmp/pids/resque_worker.pid 文件的拥有者为 root # 将导致 resque 在下一次系统初始化中无法启动自定义 Resque 使用的 Redis 连接
如果你希望 Resque 连接到一个非标准端口号或另一台服务器上的 Redis,你可以在 config/resque.yml 文件修改连接信息:
production: redis.example.com:6379好了,我们已经拥有了一个工作正常的 GitLab 了,但请继续下去,有一些事情是必须完成的。
Nginx 与 Unicorn 1. Unicorn cd /home/gitlab/gitlab sudo -u gitlab cp config/unicorn.rb.example config/unicorn.rb sudo -u gitlab bundle exec unicorn_rails -c config/unicorn.rb -E production -D 2. Nginx # 初次安装 Nginx sudo apt-get install nginx # 添加GitLab 到 nginx sites sudo wget https://raw.github.com/gitlabhq/gitlab-recipes/master/nginx/gitlab -P /etc/nginx/sites-available/ sudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab # 修改 **YOUR_SERVER_IP** 与 **YOUR_SERVER_FQDN** # 为起初的 IP 地址与准备让 GitLab 服务的域名 sudo vim /etc/nginx/sites-enabled/gitlab 笔者注:本人最初的时候不知道这个配置文件怎么配置,在浏览器里输入服务器ip的时候老是出现“welcome to nginx”页面。 后来的配置是 listion 80; #监听所有80端口的客户端请求 server_name: 192.168.1.120; #这是我Ubuntu服务器的ip地址。因为我们是小组局域网访问,所以直接配ip地址就可以了。远程访问的话可以通过vpn链接。 # 重启 nginx: sudo /etc/init.d/nginx restart 3. Init 脚本在 /etc/init.d/gitlab 创建 init 脚本:
sudo wget https://raw.github.com/gitlabhq/gitlab-recipes/master/init.d/gitlab -P /etc/init.d/ sudo chmod +x /etc/init.d/gitlab设置 GitLab 自动启动:
sudo update-rc.d gitlab defaults 21现在你可以用这种方式启动/重启/停止 GitLab 服务:
sudo /etc/init.d/gitlab restart至此搭建过程全部完成,关于添加用户和创建工程请参考这篇这篇:
GitLab 的详细介绍:请点这里
GitLab 的下载地址:请点这里