GitLab 在Linux LinuxMint(Untuntu ver)上的安装方法
我安装成功时版本:
gitlab:7.3
nginx:1.4.5
postgresql:9.3.0
ruby:2.3
https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/installation.md
Installation
Select Version to Install
Make sure you view this installation guide from the branch (version) of GitLab you would like to install. In most cases this should be the highest numbered stable branch (example shown below).
If the highest number stable branch is unclear please check the GitLab Blog for installation guide links by version.
Important Notes
This guide is long because it covers many cases and includes all commands you need, this isone of the few installation scripts that actually works out of the box.
This installation guide was created for and tested on Debian/Ubuntu operating systems. Please readdoc/install/requirements.md for hardware and operating system requirements. If you want to install on RHEL/CentOS we recommend using theOmnibus packages.
This is the official installation guide to set up a production server. To set up adevelopment installation or for many other installation options please seethe installation section of the readme.
The following steps have been known to work. Please use caution when you deviate from this guide. Make sure you don't violate any assumptions GitLab makes about its environment. For example many people run into permission problems because they changed the location of directories or run services as the wrong user.
If you find a bug/error in this guide please submit a merge request following thecontributing guide.
Overview
The GitLab installation consists of setting up the following components:
- Packages / Dependencies
- Ruby
- System Users
- Database
- Redis
- GitLab
- Nginx
1. Packages / Dependencies
sudo
is not installed on Debian by default. Make sure your system isup-to-date and install it.
# run as root!
apt-get update -y
apt-get upgrade -y
apt-get install sudo -y
Note: During this installation some files will need to be edited manually. If you are familiar with vim set it as default editor with the commands below. If you are not familiar with vim please skip this and keep using the default editor.
# Install vim and set as default editor
sudo apt-get install -y vim
sudo update-alternatives --set editor /usr/bin/vim.basic
Install the required packages (needed to compile Ruby and native extensions to Ruby gems):
sudo apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl openssh-server redis-server checkinstall libxml2-dev libxslt-dev libcurl4-openssl-dev libicu-dev logrotate python-docutils pkg-config cmake
Make sure you have the right version of Git installed
# Install Git
sudo apt-get install -y git-core# Make sure Git is version 1.7.10 or higher, for example 1.7.12 or 2.0.0
git --version
Is the system packaged Git too old? Remove it and compile from source.
# Remove packaged Git
sudo apt-get remove git-core# Install dependencies
sudo apt-get install -y libcurl4-openssl-dev libexpat1-dev gettext libz-dev libssl-dev build-essential# Download and compile from source
cd /tmp
curl -L --progress https://www.kernel.org/pub/software/scm/git/git-2.0.0.tar.gz | tar xz
cd git-2.0.0/
make prefix=/usr/local all# Install into /usr/local/bin
sudo make prefix=/usr/local install# When editing config/gitlab.yml (Step 5), change the git -> bin_path to /usr/local/bin/git
Note: In order to receive mail notifications, make sure to install a mail server. By default, Debian is shipped with exim4 but thishas problems while Ubuntu does not ship with one. The recommended mail server is postfix and you can install it with:
sudo apt-get install -y postfix
Then select 'Internet Site' and press enter to confirm the hostname.
注意:安装git的路径默认会是“/usr/local/bin/git”,GitLab的API可能找不到git路径,因此,git安装成功后做个链接:ln /usr/local/bin/git /usr/bin/git。
2. Ruby
The use of ruby version managers such as RVM, rbenv orchruby with GitLab in production frequently leads to hard to diagnose problems. For example, GitLab Shell is called from OpenSSH and having a version manager can prevent pushing and pulling over SSH. Version managers are not supported and we strongly advise everyone to follow the instructions below to use a system ruby.
Remove the old Ruby 1.8 if present
sudo apt-get remove ruby1.8
Download Ruby and compile it:
mkdir /tmp/ruby && cd /tmp/ruby
curl -L --progress ftp://ftp.ruby-lang.org/pub/ruby/2.1/ruby-2.1.2.tar.gz | tar xz
cd ruby-2.1.2
./configure --disable-install-rdoc
make
sudo make install
Install the Bundler Gem:
sudo gem install bundler --no-ri --no-rdoc
3. System Users
Create a git
user for GitLab:
sudo adduser --disabled-login --gecos 'GitLab' git
4. Database
We recommend using a PostgreSQL database. For MySQL check MySQL setup guide. Note: because we need to make use of extensions you need at least pgsql 9.1.
# Install the database packages
sudo apt-get install -y postgresql postgresql-client libpq-dev# Login to PostgreSQL
sudo -u postgres psql -d template1# Create a user for GitLab.
template1=# CREATE USER git CREATEDB;# Create the GitLab production database & grant all privileges on database
template1=# CREATE DATABASE gitlabhq_production OWNER git;# Quit the database session
template1=# \q# Try connecting to the new database with the new user
sudo -u git -H psql -d gitlabhq_production
5. Redis
sudo apt-get install redis-server# Configure redis to use sockets
sudo cp /etc/redis/redis.conf /etc/redis/redis.conf.orig# Disable Redis listening on TCP by setting 'port' to 0
sed 's/^port .*/port 0/' /etc/redis/redis.conf.orig | sudo tee /etc/redis/redis.conf# Enable Redis socket for default Debian / Ubuntu path
echo 'unixsocket /var/run/redis/redis.sock' | sudo tee -a /etc/redis/redis.conf# Activate the changes to redis.conf
sudo service redis-server restart# Add git to the redis group
sudo usermod -aG redis git
6. GitLab
GitLab 下载地址:https://github.com/gitlabhq/gitlabhq/archive/v7.3.0.tar.gz可使用 wget下载。
# We'll install GitLab into home directory of the user "git"
cd /home/git
Clone the Source
# Clone GitLab repository
sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-3-stable gitlab
Note: You can change 7-3-stable
to master
if you want thebleeding edge version, but never install master on a production server!
Configure It
# Go to GitLab installation folder
cd /home/git/gitlab# Copy the example GitLab config
sudo -u git -H cp config/gitlab.yml.example config/gitlab.yml# Update GitLab config file, follow the directions at top of file
sudo -u git -H editor config/gitlab.yml# Make sure GitLab can write to the log/ and tmp/ directories
sudo chown -R git log/
sudo chown -R git tmp/
sudo chmod -R u+rwX log/
sudo chmod -R u+rwX tmp/# Create directory for satellites
sudo -u git -H mkdir /home/git/gitlab-satellites
sudo chmod u+rwx,g=rx,o-rwx /home/git/gitlab-satellites# Make sure GitLab can write to the tmp/pids/ and tmp/sockets/ directories
sudo chmod -R u+rwX tmp/pids/
sudo chmod -R u+rwX tmp/sockets/# Make sure GitLab can write to the public/uploads/ directory
sudo chmod -R u+rwX public/uploads# Copy the example Unicorn config
sudo -u git -H cp config/unicorn.rb.example config/unicorn.rb# Find number of cores
nproc# Enable cluster mode if you expect to have a high load instance
# Ex. change amount of workers to 3 for 2GB RAM server
# Set the number of workers to at least the number of cores
sudo -u git -H editor config/unicorn.rb# Copy the example Rack attack config
sudo -u git -H cp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb# Configure Git global settings for git user, useful when editing via web
# Edit user.email according to what is set in gitlab.yml
sudo -u git -H git config --global user.name "GitLab"
sudo -u git -H git config --global user.email "example@example.com"
sudo -u git -H git config --global core.autocrlf input# Configure Redis connection settings
sudo -u git -H cp config/resque.yml.example config/resque.yml# Change the Redis socket path if you are not using the default Debian / Ubuntu configuration
sudo -u git -H editor config/resque.yml
Important Note: Make sure to edit both gitlab.yml
andunicorn.rb
to match your setup.
Note: If you want to use HTTPS, see Using HTTPS for the additional steps.
Configure GitLab DB Settings
# PostgreSQL only:
sudo -u git cp config/database.yml.postgresql config/database.yml# MySQL only:
sudo -u git cp config/database.yml.mysql config/database.yml# MySQL and remote PostgreSQL only:
# Update username/password in config/database.yml.
# You only need to adapt the production settings (first part).
# If you followed the database guide then please do as follows:
# Change 'secure password' with the value you have given to $password
# You can keep the double quotes around the password
sudo -u git -H editor config/database.yml# PostgreSQL and MySQL:
# Make config/database.yml readable to git only
sudo -u git -H chmod o-rwx config/database.yml
Install Gems(可先参考第二段Ruby服务器地址替换)
安装前可能需要:
gem charlock_holmes 依赖:sudo apt-get install libicu-dev
gem rugged 依赖: sudo apt-get install cmake
gem mysql2 依赖:sudo apt-get install libmysqlclient-dev
编辑/home/git/gitlab/Gemfile: 添加: gem "rake", "~> 10.3.2"
Note: As of bundler 1.5.2, you can invoke bundle install -jN
(whereN
the number of your processor cores) and enjoy the parallel gems installation with measurable difference in completion time (~60% faster). Check the number of your cores withnproc
. For more information check thispost. First make sure you have bundler >= 1.5.2 (runbundle -v
) as it addresses someissues that werefixed in 1.5.2.
可能链接不上服务器,可以先参考参考:
https://ruby-china.org/topics/914
我照上面各位的指导做了,还是不对
我把系统的 sources 改成了淘宝源
$ gem sources --remove https://rubygems.org/
$ gem sources -a http://ruby.taobao.org/
同时把 Gemfile 的第一行改成了
source "http://ruby.taobao.org"
为什么在 bundle install 的时候还在访问 rubygems.org,输出如下
Fetching gem metadata from http://ruby.taobao.org/.
Fetching full source index from http://ruby.taobao.org/
Fetching gem metadata from http://rubygems.org/.
Fetching full source index from http://rubygems.org/
由于大陆的“特殊情况”,rails默认生成的Gemfile的源 https://rubygems.org 很慢甚至被重置,所以适应国情,要修改下Rails默认生成的Gemfile文件。
如何做呢?
很简单,切换到Rails的默认模板路径下,修改Gemfile文件的source:
1、找Gemfile
找到两个:
a. /home/git/gitlab/Gemfile
b. /usr/local/lib/ruby/gems/2.1.0/gems/bundler-1.7.4/lib/bundler/templates/Gemfile
2、修改Gemfile文件,替换 https://rubygems.org 为 http://ruby.taobao.org 转自http://snails.github.io/2012/06/04/Modify-the-Gemfile-Template/
应该先到自己的根目录下去找Gemfile, 去改那里面的。
# For PostgreSQL (note, the option says "without ... mysql")
sudo -u git -H bundle install --deployment --without development test mysql aws# Or if you use MySQL (note, the option says "without ... postgres")
sudo -u git -H bundle install --deployment --without development test postgres aws安装成功后, 运行 gem list , 应显示结果见附录3.
Install GitLab Shell
GitLab Shell is an SSH access and repository management software developed specially for GitLab.
# Run the installation task for gitlab-shell (replace `REDIS_URL` if needed):
sudo -u git -H bundle exec rake gitlab:shell:install[v2.0.0] REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=production# By default, the gitlab-shell config is generated from your main GitLab config.
# You can review (and modify) the gitlab-shell config as follows:
sudo -u git -H editor /home/git/gitlab-shell/config.yml
Note: If you want to use HTTPS, see Using HTTPS for the additional steps.
Initialize Database and Activate Advanced Features
sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production (不要在运行中执行,以免数据丢失)# Type 'yes' to create the database tables.# When done you see 'Administrator account created:'
Note: You can set the Administrator password by supplying it in environmental variableGITLAB_ROOT_PASSWORD
, eg.:
sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production GITLAB_ROOT_PASSWORD=newpassword
Install Init Script
Download the init script (will be /etc/init.d/gitlab
):
sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab
And if you are installing with a non-default folder or user copy and edit the defaults file:
sudo cp lib/support/init.d/gitlab.default.example /etc/default/gitlab
If you installed GitLab in another directory or as a user other than the default you should change these settings in/etc/default/gitlab
. Do not edit/etc/init.d/gitlab
as it will be changed on upgrade.
Make GitLab start on boot:
sudo update-rc.d gitlab defaults 21
Setup Logrotate
sudo cp lib/support/logrotate/gitlab /etc/logrotate.d/gitlab
Check Application Status(检测状态)
Check if GitLab and its environment are configured correctly:
sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production
Compile Assets
sudo -u git -H bundle exec rake assets:precompile RAILS_ENV=production
Start Your GitLab Instance
sudo service gitlab start
# or
sudo /etc/init.d/gitlab restart
7. Nginx
Note: Nginx is the officially supported web server for GitLab. If you cannot or do not want to use Nginx as your web server, have a look at theGitLab recipes.
Installation
sudo apt-get install -y nginx
Nginx Site Configuration
(注意如使用https , 文件 gitlab改为gitlab-ssl)
Copy the example site config:
sudo cp lib/support/nginx/gitlab /etc/nginx/sites-available/gitlab
sudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab
Make sure to edit the config file to match your setup:
# Change YOUR_SERVER_FQDN to the fully-qualified
# domain name of your host serving GitLab.
sudo editor /etc/nginx/sites-available/gitlab
Note: If you want to use HTTPS, replace the gitlab
Nginx config withgitlab-ssl
. SeeUsing HTTPS for HTTPS configuration details.
生成ssl证书(https哪里也有介绍)
# sudo mkdir /etc/nginx/ssl/
# cd /etc/nginx/ssl/
# sudo openssl req -new -x509 -nodes -days 3560 -out gitlab.crt -keyout gitlab.key
Nginx Test Configuration
Validate your gitlab
or gitlab-ssl
Nginx config file with the following command:
sudo nginx -t
You should receive syntax is okay
and test is successful
messages. If you receive errors check yourgitlab
orgitlab-ssl
Nginx config file for typos, etc. as indiciated in the error message given.
Restart
sudo service nginx restart
Done!
Double-check Application Status
To make sure you didn't miss anything run a more thorough check with:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
If all items are green, then congratulations on successfully installing GitLab!
NOTE: Supply SANITIZE=true
environment variable to gitlab:check
to omit project names from the output of the check command.
Initial Login
Visit YOUR_SERVER in your web browser for your first GitLab login. The setup has created an admin account for you. You can use it to log in:
root
5iveL!fe
Important Note: Please go over to your profile page and immediately change the password, so nobody can access your GitLab by using this login information later on.
Enjoy!
Advanced Setup Tips
Using HTTPS
To use GitLab with HTTPS:
- In
gitlab.yml
:- Set the
port
option in section 1 to443
. - Set the
https
option in section 1 totrue
.
- Set the
- In the
/home/git/gitlab-shell/config.yml
of gitlab-shell:sudo -u git -H editor /home/git/gitlab-shell/config.yml
- Set
gitlab_url
option to the HTTPS endpoint of GitLab (e.g.https://git.example.com
). - Set the certificates using either the
ca_file
orca_path
option.(我未设置这个ca_file 与 ca_path)
- Use the
gitlab-ssl
Nginx example config instead of thegitlab
config.- Update
YOUR_SERVER_FQDN
.(我写的localhost) - Update
ssl_certificate
andssl_certificate_key
.(设置时默认未动) - Review the configuration file and consider applying other security and performance enhancing features.
- Update
4. Using a self-signed certificate is discouraged but if you must use it follow the normal directions then:
a. Generate a self-signed SSL certificate:
mkdir -p /etc/nginx/ssl/
cd /etc/nginx/ssl/
sudo openssl req -newkey rsa:2048 -x509 -nodes -days 3560 -out gitlab.crt -keyout gitlab.key
sudo chmod o-r gitlab.key
b. In the config.yml of gitlab-shell set self_signed_cert to true.
Check application status
Check if GitLab and its environment are configured correctly:
sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production
To make sure you didn't miss anything run a more thorough check with:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
If all items are green, then the SSL certificate successfully implemented
Additional Markup Styles
Apart from the always supported markdown style there are other rich text files that GitLab can display. But you might have to install a dependency to do so. Please see thegithub-markup gem readme for more information.
Custom Redis Connection
If you'd like Resque to connect to a Redis server on a non-standard port or on a different host, you can configure its connection string via theconfig/resque.yml
file.
# example
production: redis://redis.example.tld:6379
If you want to connect the Redis server via socket, then use the "unix:" URL scheme and the path to the Redis socket file in theconfig/resque.yml
file.
# example
production: unix:/path/to/redis/socket
Custom SSH Connection
If you are running SSH on a non-standard port, you must change the GitLab user's SSH config.
# Add to /home/git/.ssh/config
host localhost # Give your setup a name (here: override localhost)user git # Your remote git userport 2222 # Your port numberhostname 127.0.0.1; # Your server name or IP
You also need to change the corresponding options (e.g. ssh_user
,ssh_host
,admin_uri
) in theconfig\gitlab.yml
file.
LDAP Authentication
You can configure LDAP authentication in config/gitlab.yml
. Please restart GitLab after editing this file.
Using Custom Omniauth Providers
See the omniauth integration document
附录-2:
你可能用了非80端口,这时你需要修改相应文件中的端口号,要修改的文件:
1./etc/nginx/sites-available/gitlab[-ssl]
2./home/git/gitlab/config/gitlab.yml
3./home/git/gitlab-shell/config.yml
附录-1:
可能会出现的问题:
1. 将Normal http host 配置当成https的配置改错位置了。
2. 客户端提示"SSL certificate problem:self signed certificate",解决办法:
克隆时添加参数"-c http.sslVerify=false",或者设置全局无ssl检测:"git config --global http.sslVerify false"
如:
git -c http.sslVerify=false clone https://domain.com/path/to/git
第2点与可以设置环境变量:GIT_SSL_NO_VERIFY=1,也可解决这个问题。
附录0:
可能提示rake版本过底解决方法:
gem install -v 10.3.2 rake
附录1:
代码服务器设置防火墙:
sudo iptables -P INPUT DROP
sudo iptables -P OUTPUT ACCEPT
sudo iptables -P FORWARD DROP
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 443 -j ACCEPT
sudo iptabales -A OUTPUT -i lo -j ACCEPT
附录2:
文件大小限制设置
1. 设置gitlab的object size 大小
sudo editor /home/git/gitlab/config/gitlab.yml
将"max_size:2?????"改成需要的Bytes.
2. 设置nginx 的client_max_body_size
sudo editor /etc/nginx/sites-enabled/gitlab-ssl
设置client_max_body_size为:
client_max_body_size 2048m;
client_body_buffer_size 10m
3. 设置note.rb中的size
sudo editor /home/git/gitlab/app/models/note.rb
修改行:
validates :attachment, file_size: { maximum: 10.megabytes.to_i }
3.设置postBuffer
单独项目设置:
git config http.postBuffer 1024000000
全局设置:
git config --global http.postBuffer 1024000000
4.重启服务
sudo service gitlab restart
sudo service nginx restart
附录3:
ruby 2.1.3
gem list 显示结果:
*** LOCAL GEMS ***
ace-rails-ap (2.0.1)
actionmailer (4.1.1)
actionpack (4.1.1)
actionview (4.1.1)
activemodel (4.1.1)
activerecord (4.1.1)
activesupport (4.1.1)
acts-as-taggable-on (2.4.1)
addressable (2.3.5)
annotate (2.6.0)
arel (5.0.1.20140414130214)
asciidoctor (0.1.4)
awesome_print (1.2.0)
axiom-types (0.0.5)
bcrypt (3.1.7)
better_errors (1.0.1)
bigdecimal (1.2.4)
binding_of_caller (0.7.2)
bootstrap-sass (3.0.3.0)
builder (3.2.2)
bundler (1.7.4)
capybara (2.2.1)
carrierwave (0.9.0)
celluloid (0.15.2)
charlock_holmes (0.6.9.4)
cliver (0.3.2)
code_analyzer (0.4.3)
coderay (1.1.0)
coercible (1.0.0)
coffee-rails (4.0.1)
coffee-script (2.2.0)
coffee-script-source (1.6.3)
colored (1.2)
colorize (0.5.8)
connection_pool (1.2.0)
coveralls (0.7.0)
crack (0.4.1)
creole (0.3.8)
d3_rails (3.1.10)
daemons (1.1.9)
database_cleaner (1.3.0)
debug_inspector (0.0.2)
default_value_for (3.0.0)
descendants_tracker (0.0.3)
devise (3.2.4)
devise-async (0.9.0)
diff-lcs (1.2.5)
diffy (3.0.3)
docile (1.1.1)
dotenv (0.9.0)
dropzonejs-rails (0.4.14)
email_spec (1.5.0)
emoji (1.0.1)
enumerize (0.7.0)
equalizer (0.0.8)
erubis (2.7.0)
escape_utils (0.2.4)
eventmachine (1.0.3)
excon (0.32.1)
execjs (2.0.2)
expression_parser (0.9.0)
factory_girl (4.3.0)
factory_girl_rails (4.3.0)
faraday (0.8.9)
faraday_middleware (0.9.0)
ffaker (1.22.1)
ffi (1.9.3)
fog (1.21.0)
fog-brightbox (0.0.1)
fog-core (1.21.1)
fog-json (1.0.0)
font-awesome-rails (3.2.1.3)
foreman (0.63.0)
formatador (0.2.4)
gemnasium-gitlab-service (0.2.2)
gherkin-ruby (0.3.1)
github-markup (1.1.0)
gitlab-flowdock-git-hook (0.4.2.2)
gitlab-grack (2.0.0.pre)
gitlab-grit (2.6.11)
gitlab-linguist (3.0.0)
gitlab_emoji (0.0.1.1)
gitlab_git (6.2.1)
gitlab_meta (7.0)
gitlab_omniauth-ldap (1.1.0)
gollum-lib (3.0.0)
gon (5.0.1)
grape (0.6.1)
grape-entity (0.4.2)
growl (1.0.3)
guard (2.2.4)
guard-rspec (4.2.0)
guard-spinach (0.0.2)
haml (4.0.5)
haml-rails (0.5.3)
hashie (2.1.2)
hike (1.2.3)
hipchat (0.14.0)
http_parser.rb (0.5.3)
httparty (0.13.0)
httpauth (0.2.1)
i18n (0.6.11)
ice_nine (0.10.0)
io-console (0.4.2)
jasmine (2.0.2)
jasmine-core (2.0.0)
jquery-atwho-rails (0.3.3)
jquery-rails (3.1.0)
jquery-scrollto-rails (1.4.3)
jquery-turbolinks (2.0.1)
jquery-ui-rails (4.2.1)
json (1.8.1)
jwt (0.1.13)
kaminari (0.15.1)
kgio (2.8.1)
launchy (2.4.2)
letter_opener (1.1.2)
libv8 (3.16.14.3 x86_64-linux)
listen (2.3.1)
lumberjack (1.0.4)
mail (2.5.4)
method_source (0.8.2)
mime-types (1.25.1)
mini_portile (0.6.0)
minitest (5.3.5, 4.7.5)
mousetrap-rails (1.4.6)
multi_json (1.10.1)
multi_xml (0.5.5)
multipart-post (1.2.0)
mysql2 (0.3.16)
net-ldap (0.7.0)
net-scp (1.1.2)
net-ssh (2.8.0)
newrelic_rpm (3.9.4.245)
nokogiri (1.6.2.1)
nprogress-rails (0.1.2.3)
oauth (0.4.7)
oauth2 (0.8.1)
omniauth (1.1.4)
omniauth-github (1.1.1)
omniauth-google-oauth2 (0.2.5)
omniauth-oauth (1.0.1)
omniauth-oauth2 (1.1.1)
omniauth-shibboleth (1.1.1)
omniauth-twitter (1.0.1)
org-ruby (0.9.8)
orm_adapter (0.5.0)
pg (0.15.1)
phantomjs (1.9.2.0)
poltergeist (1.5.1)
polyglot (0.3.4)
posix-spawn (0.3.9)
pry (0.9.12.4)
psych (2.0.5)
pyu-ruby-sasl (0.0.3.3)
quiet_assets (1.0.2)
racc (1.4.10)
rack (1.5.2)
rack-accept (0.4.5)
rack-attack (2.3.0)
rack-cors (0.2.9)
rack-mini-profiler (0.9.0)
rack-mount (0.8.3)
rack-protection (1.5.1)
rack-test (0.6.2)
rails (4.1.1)
rails_autolink (1.1.6)
rails_best_practices (1.14.4)
railties (4.1.1)
raindrops (0.12.0)
rake (10.3.2, 10.1.0)
raphael-rails (2.1.2)
rb-fsevent (0.9.3)
rb-inotify (0.9.2)
rdoc (4.1.0, 3.12.2)
redcarpet (3.1.2)
RedCloth (4.2.9)
redis (3.0.6)
redis-actionpack (4.0.0)
redis-activesupport (4.0.0)
redis-namespace (1.4.1)
redis-rack (1.5.0)
redis-rails (4.0.0)
redis-store (1.1.4)
ref (1.0.5)
request_store (1.0.5)
require_all (1.3.2)
rest-client (1.6.7)
rinku (1.7.3)
rouge (1.3.3)
rspec (2.14.1)
rspec-core (2.14.7)
rspec-expectations (2.14.4)
rspec-mocks (2.14.4)
rspec-rails (2.14.0)
ruby-progressbar (1.2.0)
rubyntlm (0.1.1)
rubypants (0.2.0)
rugged (0.21.0)
safe_yaml (0.9.7)
sanitize (2.1.0)
sass (3.2.19)
sass-rails (4.0.3)
sdoc (0.3.20)
seed-fu (2.3.1)
select2-rails (3.5.2)
semantic-ui-sass (0.16.1.0)
settingslogic (2.0.9)
sexp_processor (4.4.0)
shoulda-matchers (2.1.0)
sidekiq (2.17.0)
simple_oauth (0.1.9)
simplecov (0.8.2)
simplecov-html (0.8.0)
sinatra (1.4.4)
six (0.2.0)
slack-notifier (0.3.2)
slim (2.0.2)
slop (3.4.7)
spinach (0.8.7)
spinach-rails (0.2.1)
spring (1.1.3)
spring-commands-rspec (1.0.1)
spring-commands-spinach (1.0.0)
sprockets (2.11.0)
sprockets-rails (2.1.3)
stamp (0.5.0)
state_machine (1.2.0)
stringex (2.5.1)
temple (0.6.7)
term-ansicolor (1.2.2)
test-unit (2.1.3.0)
test_after_commit (0.2.2)
therubyracer (0.12.0)
thin (1.6.1)
thor (0.19.1)
thread_safe (0.3.4)
tilt (1.4.1)
timers (1.1.0)
tinder (1.9.3)
tins (0.13.1)
treetop (1.4.15)
turbolinks (2.0.0)
twitter-stream (0.1.16)
tzinfo (1.2.2)
uglifier (2.3.2)
underscore-rails (1.4.4)
unf (0.1.4)
unf_ext (0.0.6)
unicorn (4.6.3)
unicorn-worker-killer (0.4.2)
version_sorter (1.1.0)
virtus (1.0.1)
warden (1.2.3)
webmock (1.16.0)
websocket-driver (0.3.3)
wikicloth (0.8.1)
xpath (2.0.0)
附录4:
Git config for git user? no错误(我没有处理这个错误,上传代码下载代码没受引响,不知道为什么):
http://superuser.com/questions/743970/error-in-gitlab-git-configured-for-git-user-no-try-fixing-it
Until today evening everything was working fine. I don't how server goes down, some one would have turned off but after I restart server and lxc container where gitlab is used to run, I tried to access gitlab by the server IP:192.168.2.9(container IP) in browser I get response as
Then I checked
then I changed it to
and checked
Then I did user.name=GitLabuser.email=gitlab@localhostcore.autcrlf = input I tried to find any occurrence of I tried to find any occurrence of [user]name = GitLabemail = gitlab@localhost[core]autocrlg = input and changed to [user]name = gitemail = gitbum@xxxx.xx[core]autocrlg = input Now when I run user.name=gituser.email=gitbum@xxxx.xxcore.autcrlf = input but when I run
I get same error again
I checked every time with restart the gitlab again and again. I have now I idea whats happen suddenly. What I did when I start the server was started the git container from UPATE I found the occurrence of I see the result is
but still I don't get gitlab up when I try to access from browser. what would be the problem?
附录5:
上传项目文件多文件大时TortoiseGIT卡起不动。作如下处理,但还是一样的问题:
git config --global core.autocrlf false
git config --global core.safecrlf true
git config --global http.postBuffer 1000000000
还修改了:nginx的gitlab-ssl 中的client_max_body_size:为 4096m.但还是一样的问题:
最后解决办法:
将项目分成多个部分,每部分小于500MB,然后分部分上传,最后上传成功。
不知是不是timeout引起的,后来设置了一下nginx 的 “keepalive_timeout 1800" 与 "send_timeout 300" 好像还是不能上传久的大的项目。
后来又修改了: /home/git/gitlab/config/unicorn.rb
将 timeout改成了600。
将文件:/home/git/gitlab/config/gitlab.yml中的timeout 也作了改大处理,改成了600。
上面的完成后,就没出问题了。
附录6:
修改repositories 的位置
1. repositories位置设置:
sudo editor /home/git/gitlab/config/gitlab.yml
修改 path_repos
2. 停止gitlab
sudo service gitlab stop
3. 安装gitlab-shell
4. 修改/home/git/gitlab-shell/config.yml
设置"set self_signed_cert"为true
5.启动gitlab服务
sudo service gitlab start
附录7:
密码忘记后密码恢复:
1. 链接数据库 >sudo -u postgres psql gitlabhq_production 2.然后从users表查出数据 select * from users; 3. 找到一个已知密码的用户并拷贝他的密码 update users set encrypted_password='知道密码的用户的加密后的密码字串' where email='user_email_address' 加密后字符串是bcrypt生成的,有python版本,可安装一个生成一个,再update进即可。 给个知道密码明文的密码字符串:123 10轮加密后是:'$2a$10$x/loqHZznmjl4dT4dlOahesEuIo6kdSGL4OUoHPcCdLgsPZNhBnfm'。 4. 用修改后的密码登录后可能会提示错误,但回到首页再次登录会成功。 5. 重启gitlab: sudo service gitlab restart 6. 完成 |
GitLab 在Linux LinuxMint(Untuntu ver)上的安装方法相关推荐
- LINUX下tar.gz包的安装方法
LINUX下tar.gz包的安装方法 在tar.gz的东西不多了---- ======================================== 大多以tar.gz 和tar.bz2打包软件 ...
- linux系统 插优盘安装xvidcap,Linux屏幕录像软件xvidcap的安装方法
原创内容,转载请注明出处:https://www.myzhenai.com/thread-15675-1-1.html https://www.myzhenai.com.cn/post/1184.ht ...
- Linux下PCI转串口卡驱动安装方法
Linux下PCI转串口卡驱动安装方法 ----------------------------------- 由于公司产品要做行业市场,而产品与行业用户间PC的通讯为RS232串口方式.而行业用户那 ...
- arm架构服务器安装系统教程,docker服务在arm平台上部署安装方法
docker服务在arm平台上部署安装方法 本教程使用的硬件平台是全志A40I,操作系统采用的是ubuntu18.04,内核是3.10.108(内核很老导致docker兼容性不好) 1.获取最新版本的 ...
- Linux 系统下各种包的安装方法
一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd soft.version.rpm所在 ...
- 奥西打印机服务器重装系统教程,奥西320打印机在电脑上的安装方法
奥西320打印机在电脑上的安装方法 奥西320打印机在电脑上的安装方法 编辑:OA161湖湘文印联盟 1.文件:打印机管理器:添加打印机向导――下一步 2.选中"网络绘图仪服务器" ...
- pyrouge和rouge在Linux上的安装方法以及结果比较
诸神缄默不语-个人CSDN博文目录 这里的pyrouge安装的是这个:pyrouge · PyPI,也就是这个项目:bheinzerling/pyrouge: A Python wrapper for ...
- 夏普linux电视软件,夏普电视第三方软件安装方法,使用教程和攻略
原标题:夏普电视第三方软件安装方法,使用教程和攻略 作为智能电视老牌企业,夏普电视近两年被富士康收购之后,重新焕发第二春,在各大电商平台的销量都是名列前茅,但是很多买了夏普电视的朋友不知道如何给夏普电 ...
- 关于Python在Linux、Mac和Windows上的安装方法总结
一.Linux下安装python 1.python源码安装包下载地址: https://www.python.org/downloads/source/ 2.下载完tar.xz压缩包以后,开始解压: ...
最新文章
- 关于数据库中NULL的描述,下列哪些说法符合《阿里巴巴Java开发手册》
- Chrome Inspect调试微信出现空白页面的解决方法
- linux wheel组
- Windows Phone开发(25):启动器与选择器之WebBrowserTask
- 2007年浙江大学计算机及软件工程研究生机试真题
- python selenium 获取同一元素的多个属性_python+selenium如何获取元素中并列的属性值?...
- eclipse安卓工程的构建、配置连接模拟器、安卓工程结构介绍
- JS 原型对象(prototype)
- 五年前,跳槽涨薪,你笑了,五年后,跳槽降薪,请接受
- oracle exists替换,oracle 优化or 替换为in、exists、union all的几种写法,测试没有问题!...
- 点云数据常用处理:python实现
- 异数OS-星星之火(二)--远程实验室注册开放
- 似然比和p值不同的原因_二代P值:传统P值的升级 | 社论前沿
- (一)大彩屏幕 进行串口通信
- avoid mutating a prop directly since the value will be overwritten whenever完美解决
- Edge浏览器的书签(收藏夹)文件夹地址在哪?
- C#窗体加标尺的两种方式及显现效果
- 如何在cmd命令行窗口打开QQ
- Flink 的状态保存和恢复
- 【Bioinformatics】背曲拇指与 Ehlers-Danlos syndrome
热门文章
- Go语言环境配置 Sublime Text+golang+gocode+margo详细过程及解决问题的方法
- 怎么样拍摄出优质短视频|抖音短视频拍摄技巧
- Linux系统使用--Ubuntu 16.04 安装为知笔记
- 计算机组成原理 --- 数据信息的表示
- Nginx的简单使用,配置多前端,多端口【微信小程序+前后端分离跨域解决】
- 让我差点中计的电话诈骗套路!|凹凸日常
- 了解数据的发展历程--大数据简史
- 爬虫图片mysql_爬取微博图片数据存到Mysql中遇到的各种坑\爬取微博图片\Mysql存储图片\微博爬虫...
- SANGFOR SCSA——信息安全概述
- 经验分享!java程序员面试十多家公司后的经验心得