ubuntu 13.04安裝gitlab 5.3版 ubuntu 與 Debian 還是有點區別的,因為 ubuntu 預設安裝了 sudo/python,並且 gedit 編輯器用著比 vim 容易上手...所以就沒有安裝 sudo/python 和 vim 的的代碼了... 現在開始... 一. 軟體源安裝所需的軟體包1sudo apt-get update1<span></span>sudo apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl git-core openssh-server redis-server checkinstall libxml2-dev libxslt-dev libcurl4-openssl-dev libicu-dev二. 編譯安裝 ruby 1.9.31mkdir /tmp/ruby && cd /tmp/ruby2curl --progress http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.gz | tar xz3cd ruby-1.9.3-p3924./configure5make6sudo make installsudo gem install bundler三. 為 gitlab 建立使用者sudo adduser --disabled-login --gecos 'GitLab' git四. 安裝 gitlab-shell# 登入第三步建立的 git 使用者sudo su git # 切換到 git 使用者的 home 目錄cd /home/git # 複製 gitlab-shellgit clone https://github.com/gitlabhq/gitlab-shell.git cd gitlab-shell # 切換到 gitlab-shell 的 v1.4.0 分支git checkout v1.4.0 cp config.yml.example config.yml # 編輯設定檔 config.ym 並且替換 gitlab_url# 為主機網域名稱.例如 'http://domain.com/',本地區域網路安裝的話預設localhost就行.gedit config.yml # 開始安裝../bin/install五. 安裝資料庫# 軟體源安裝 mysql 資料庫,過程中會讓你輸入兩次 mysql root 使用者的密碼,牢記!sudo apt-get install -y mysql-server mysql-client libmysqlclient-dev # 用 root 使用者登入 mysqlmysql -u root -p # 建立 gitlab 使用者,替換 密碼 為你的資料庫 gitlab 使用者的密碼. 牢記.(注:前面的 mysql> 不用複製)mysql> CREATE USER 'gitlab'@'localhost' IDENTIFIED BY '密碼'; # 建立 gitlabhq_production 資料庫mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`; # 將 gitlabhq_production 資料庫的增刪改查 等許可權賦予 gitlab 使用者mysql> GRANT SELECT, LOCK TABLES, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'gitlab'@'localhost'; # 退出 mysql 資料庫mysql> \q # 嘗試用 gitlab 使用者串連 gitlabhq_production 資料庫,登入成功(注:出現 mysql>)說明資料庫配置完成.sudo -u git -H mysql -u gitlab -p -D gitlabhq_production六. 安裝 gitlab# gitlab 要安裝到 git 使用者的 home 目錄下.cd /home/git# 複製 gitlab 項目sudo -u git -H git clone https://github.com/gitlabhq/gitlabhq.git gitlab # 進入 gitlab 目錄cd /home/git/gitlab # 切換到 gitlab 的 5.3 分支.sudo -u git -H git checkout 5-3-stablecd /home/git/gitlab # 複製 gitlab 的樣本設定檔到指定目錄sudo -u git -H cp config/gitlab.yml.example config/gitlab.yml # 如果用的不是本機伺服器,更改 localhost 為 gitlab 的伺服器網域名稱sudo -u git -H gedit config/gitlab.yml # 確保目前使用者對 gitlab 的 log 和 tmp 檔案有讀寫權限.sudo chown -R git log/sudo chown -R git tmp/sudo chmod -R u+rwX log/sudo chmod -R u+rwX tmp/ # 建立一個我不認識的目錄...汗!sudo -u git -H mkdir /home/git/gitlab-satellites # 再建立兩個我不認識的目錄...並且確保 目前使用者對他有讀寫權限.sudo -u git -H mkdir tmp/pids/sudo -u git -H mkdir tmp/sockets/sudo chmod -R u+rwX tmp/pids/sudo chmod -R u+rwX tmp/sockets/ # 建立公用的上傳備份目錄,並確保目前使用者對其有讀寫權限.否則備份會失敗.sudo -u git -H mkdir public/uploadssudo chmod -R u+rwX public/uploads # 複製樣本設定檔到制定目錄sudo -u git -H cp config/puma.rb.example config/puma.rb # 找到其中有一行 # workers 2,去掉前面的 # 並將 2 改為 3.sudo -u git -H gedit config/puma.rb # 配置 gitlab 的全域設定.sudo -u git -H git config --global user.name "GitLab"sudo -u git -H git config --global user.email "gitlab@localhost"# 複製樣本Mysql設定檔到指定目錄sudo -u git cp config/database.yml.mysql config/database.yml# 修改裡面的 root 為 gitlab, 密碼為建立的 gitlab mysql 使用者密碼sudo gedit config/database.yml# 安裝一個我不認識的東西...我沒臉翻譯了...大哥你還是看原版教程吧cd /home/git/gitlabsudo gem install charlock_holmes --version '0.6.9.4'sudo -u git -H bundle install --deployment --without development test postgressudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production# 下載 gitlab 的 開始/停止 指令碼,並且加入目前使用者的可執行許可權.sudo cp lib/support/init.d/gitlab /etc/init.d/gitlabsudo chmod +x /etc/init.d/gitlab# 添加 gitlab 的開機啟動sudo update-rc.d gitlab defaults 21# 檢查 gitlab 的狀態和環境配置是否正確.sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production# 啟動 gitlabsudo service gitlab start# 或者sudo /etc/init.d/gitlab restart# 再次檢查 gitlab 的狀態,如果全部綠色,說明 gitlab 配置成功.不知道為什麼,我要運行這個命令兩次才會全綠sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production七. 配置 Nginx# 軟體源安裝Nginxsudo apt-get install nginx# 複製 gitlab 的樣本配置到指定目錄sudo cp lib/support/nginx/gitlab /etc/nginx/sites-available/gitlabsudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab# 修改設定檔.更改其中的 YOUR_SERVER_FQDN 為你的 gitlab 伺服器全稱網域名稱或者本機IP地址,修改 listen 為 *:80sudo gedit /etc/nginx/sites-available/gitlab# 重啟 nginx 伺服器sudo service nginx restart# 開啟瀏覽器輸入本機 IP,用下面的使用者密碼登入既可.admin@local.host5iveL!fe