注
:
说明
1、本人所在公司目前在用的gilab版本为7.14.3,鉴于版本比较老打算迁移到新版。
2、旧版乃前人所部署,部署方式也比较传统:通过手动一步步搭环境和组件,还是比较繁琐
3、本人一般用docker方式部署gitlab,借此机会通过手动方式实现下gilab部署也是有必要的
1、Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目
2、与Github类似的功能,能够浏览源代码,管理缺陷和注释,
3、可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库
# 以下依赖版本可根据需求选择,可以使用较新版本代替
* 系统版本:Centos 7
* gitlab:7-14中文版|英文版
* ruby:2.2.0
* mysql:5.7
* nginx:1.8.0
* git: 2.8.2
* redis:yum 版本
特别说明
:由于旧版距今很多年,重新部署还是有很多坑。也许你按照文档走还会碰到新的问题,希望能克服!
操作如下
# 永久
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
# 临时
setenforce 0
systemctl stop firewalld
systemctl disable firewalld
epel
源 # 方式一
yum -y install epel*
# 方式二(推荐)
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
# 导入key
rpm --import https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7
puias
源# puias 是基于RH的一个扩展distribution和mirror,目前它由普林斯顿高能所维护。
# /etc/yum.repos.d/puias-computational.repo
[PUIAS_computational]
name=PUIAS computational Base $releasever - $basearch
mirrorlist=http://puias.math.ias.edu/data/puias/computational/$releasever/$basearch/mirrorlist
#baseurl=http://puias.math.ias.edu/data/puias/computational/$releasever/$basearch
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puias
# 导入key,下面二选一
rpm --import http://puias.princeton.edu/data/puias/7/x86_64/os/RPM-GPG-KEY-puias
# rpm --import http://springdale.math.ias.edu/data/puias/7/x86_64/os/RPM-GPG-KEY-puias
# 建立缓存
yum clean all && yum makecache
# 请确保用户家目录有足够磁盘空间,因为后续仓库默认的数据都在其家目录下。也可修改到其他目录
# 默认/home/git,如需指定家目录使用 -d 参数
useradd git
# 设置密码 fZ2ICa7w
passwd git
# 配置sudo权限
echo "git ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoers
echo "export git_SSL_NO_VERIFY=1" >> /home/git/.bash_profile
source /home/git/.bash_profile
# 不添加变量的话使用https链接会报如下错误,不过本文没有使用https
fatal: unable to access 'https://github.com/gitlabhq/grit.git/': Peer certificate cannot be authenticated with known CA certificates
操作如下
yum -y install readline readline-devel ncurses-devel gdbm-devel glibc-devel tcl-devel expat-devel db4-devel byacc sqlite-devel libyaml libyaml-devel libffi libffi-devel libxml2 libxml2-devel libxslt libxslt-devel libicu libicu-devel system-config-firewall-tui python-devel redis wget crontabs logwatch logrotate perl-Time-HiRes gettext gettext-devel openssl-devel zlib-devel gcc gcc-c++ make autoconf tk-devel python-pip patch pcre-devel curl curl-devel sudo yum-plugin-fastestmirror cmake perl-CPAN nodejs automake libxml* libmcrypt* libtool-ltdl-devel* yum-utils
yum -y remove ruby git nginx mysql mysql-server
yum -y groupinstall 'Development Tools'
操作如下
localtime
文件rm -f /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# yum 方式
yum -y install ntp
# 同步时间
ntpdate pool.ntp.org
# 配置定时任务同步时间,也可以通过 crontba -e 设置
echo '*/20 * * * * /usr/sbin/ntpdate pool.ntp.org > /dev/null 2>&1' >> /var/spool/cron/root
# 查看
$ crontab -l
*/20 * * * * /usr/sbin/ntpdate pool.ntp.org > /dev/null 2>&1
操作如下
# 不检查证书下载
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.8.2.tar.gz --no-check-certificate
# 编译安装
tar zxvf git-2.8.2.tar.gz && cd git-2.8.2
./configure --prefix=/usr/local/git
make && make install
# 确认git版本,如有其他旧版本是还没卸载干净
$ git --version
git version 1.8.3.1
$ yum -y remove git
# 全局环境变量
echo 'export PATH="/usr/local/git/bin:$PATH"' >> /etc/profile
# 刷新
source /etc/profile
# 验证
git --version
操作如下
# 下载
wget http://nginx.org/download/nginx-1.8.0.tar.gz
# 解压
tar -zxvf nginx-1.8.0.tar.gz && cd nginx-1.8.0
# 编译安装
./configure --prefix=/usr/local/nginx --user=hukanfa --group=hukanfa --with-http_ssl_module --with-http_stub_status_module --with-pcre
make && make install
操作如下
redis
(>= redis 2.4.0)# 备份之前配置,修改端口号,添加socket配置,添加socket权限,启动服务
cp -ar /etc/redis.conf /etc/redis.conf.bak
# 修改以下redis配置 /etc/redis.conf
bind 0.0.0.0
port 6379
unixsocket /var/run/redis/redis.sock
unixsocketperm 0775
# 启动服务
systemctl start redis
systemctl status redis
# 配置开机自启
systemctl enable redis
# chkconfig redis on
$ gpasswd -a git redis
Adding user git to group redis
$ id git
uid=1001(git) gid=1001(git) groups=1001(git),993(redis)
操作如下
groupadd mysql
useradd -g mysql -s /sbin/nologin mysql
# 官网源码包下载地址,选择对应版本下载即可。下载跳转页面选择左下角不登陆下载,见图
https://dev.mysql.com/downloads/mysql/
# 具体下载链接(下载带boots的,后续mysql版本都需要boots)
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-boost-5.7.44.tar.gz
# 百度网盘下载链接
https://pan.baidu.com/s/1wrlTyaigxvTKTNf6H8F4KQ?pwd=fniy
操作如下
# 安装目录及pid文件所在目录\数据目录、日志目录
mkdir -p /usr/local/mysql57/{data,logs}
# socket 文件路径
/tmp
msyql-boost
# 解压
tar -zxvf mysql-boost-5.7.44.tar.gz
# 进入到解压目录下
cd mysql-5.7.44
# 注意 -DWITH_BOOST=boost 只是相对于cmake执行的当前路径,若是其他路径请写全路径
# 预编译
cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql57 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=boost \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DMYSQL_TCP_PORT=3306 \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci
# 正式编译(这个过程需要等待十几分钟),安装过程无异常退出则成功(~ ~)
make && make install
$ pwd
/usr/local/mysql57
$ ls
bin data docs include lib LICENSE logs man mysql-test README README-test share support-files
操作如下
# 更改安装目录所属为mysql用户
chown -R mysql:mysql /usr/local/mysql57
my.cnf
# 备份原配置
cp -ar /etc/my.cnf /etc/my.cnf.bak
# 清空配置文件
> /etc/my.cnf
# vim /etc/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock
default-character-set = utf8mb4
[mysqld]
port = 3306
user = mysql
pid-file = /usr/local/mysql57/mysql.pid
socket = /tmp/mysql.sock
basedir = /usr/local/mysql57
datadir = /usr/local/mysql57/data
log_error = /usr/local/mysql57/logs/error.log
slow_query_log_file = /usr/local/mysql57/logs/slow.log
[mysqldump]
quick
max_allowed_packet = 16M
[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M
# cd /usr/local/mysql57
./bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql57 --datadir=/usr/local/mysql57/data
# 执行完成后data目录下会生产初始数据
# 全局环境变量
echo 'export PATH="/usr/local/mysql57/bin:$PATH"' >> /etc/profile
# 刷新
source /etc/profile
初始化特别说明
–initialize
:会生成一个随机密码(~/.mysql_secret)--initialize-insecure
:不会生成密码,后续再另行设定操作如下
# vim /usr/lib/systemd/system/mysql.service
[Unit]
Description=The Mysql Process Manager
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/mysql57/mysql.pid
ExecStart=/usr/local/mysql57/support-files/mysql.server start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=false
[Install]
WantedBy=multi-user.target
# 重载配置
systemctl daemon-reload
# 启动服务
systemctl start mysql
# 查看状态
[root@hukanfa support-files]# systemctl status mysql
● mysql.service - The Mysql Process Manager
Loaded: loaded (/usr/lib/systemd/system/mysql.service; disabled; vendor preset: disabled)
Active: active (running)
# 开机自启动
systemctl enable mysql
# 登录数据库,无密码。后续可自行设置
mysql -u root
# 创建数据库
CREATE DATABASE IF NOT EXISTS gitlabhq_production;
# 创建用户
GRANT ALL PRIVILEGES ON gitlabhq_production.* TO 'git'@'%' IDENTIFIED BY 'cX4ncpjZMU';
# 刷新权限
FLUSH PRIVILEGES;
# 输入密码后登录
mysql -ugit -p
# 查看库
mysql> show databases;
+---------------------+
| Database |
+---------------------+
| information_schema |
| gitlabhq_production |
+---------------------+
2 rows in set (0.00 sec)
注
:此篇开始,一般使用git
用户环境操作
操作如下
# 查看ruby版本
https://www.ruby-lang.org/zh_cn/downloads/releases/
# 下载
wget http://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.0.tar.gz
# 解压
tar -zxvf tar -zxvf ruby-2.2.0.tar.gz
# 编译安装
cd ruby-2.2.0
./configure --prefix=/usr/local/ruby --disable-install-rdoc
make clean && make && make install
# 全局环境变量
echo 'export PATH="/usr/local/ruby/bin:$PATH"' >> /etc/profile
# 刷新
source /etc/profile
# 验证
gem --version
####
2.4.5
ruby --version
####
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-linux]
chown -R git:git /usr/local/ruby
操作如下
# gem source --remove|-r --add|-a
# 删除默认源 # 新增国内源
gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
# gem source -a http://mirrors.aliyun.com/rubygems/
# 更新缓存
gem sources -u
# 查看在用的源
gem sources -l
# ruby2.5.0 版本只支持 bundler2.0.0以下版本,之下最新版本为:1.17.3
gem install bundler -v 1.17.3
# 安装完成后,bundle/bundler命令默认在ruby安装目录bin下,如/usr/local/ruby/bin/
# bundler版本查看链接
https://github.com/rubygems/bundler/tags
~/.gemrc
文件,增加 ssl_verify_mode: 0
配置,以便于 RubyGems 可以忽略 SSL 证书错误。# vim ~/.gemrc
:sources:
https://gems.ruby-china.com
:ssl_verify_mode: 0
操作如下
su - git
# 配置gem安装忽略证书认证
vim ~/.gemrc
---
:backtrace: false
:bulk_threshold: 1000
:sources:
- https://gems.ruby-china.com/
:ssl_verify_mode: 0
:update_sources: true
:verbose: true
git clone https://gitlab.com/gitlab-org/gitlab-shell.git -b v2.7.2
cd gitlab-shell/
cp config.yml.example config.yml
vi config.yml
# 配置自己的gitlab域名和端口,没有就用默认
gitlab_url: "http://localhost:8080"
# 下面修改的内容为git指定家目录后的操作,如果是默认的/home/git则不需要修改,后面不再提示
##################################
repos_path: "/home/git/repositories"
auth_file: "/home/git/.ssh/authorized_keys"
##################################
redis:
bin: /usr/bin/redis-cli
# host: 127.0.0.1
# port: 6379
# pass: redispass # Allows you to specify the password for Redis
database: 0
socket: /var/run/redis/redis.sock
namespace: resque:gitlab
./bin/install
# cd ~
操作如下
# 从官网下载,英文版本。低版本gitlab估计是不能选择语言,最新版本是可以在设置界面选择语言
git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-14-stable gitlab
# 中文版 7.14
git clone https://gitee.com/hukanfa/gitlab.git -b 7-14-zh gitlab
操作如下
# 切换到git用户,进入到gitlab根目录
cp config/gitlab.yml.example config/gitlab.yml
gitlab.yml
配置文件,默认用了/home/git
路径的基本不用改vim config/gitlab.yml
################
:%s/home/data/g
################
## gitLab settings
gitlab:
## 设置域名或用默认
host: localhost
port: 8080
https: false
# 如果准备使用smtp方式发送邮件,这里可以修改为发送邮件的账号,如果使用系统sendmail就不用修改
email_from: [email protected]
email_display_name: GitLab
email_reply_to: [email protected]
# 允许使用用户名或邮箱账号登录
allow_username_or_email_login: true
# 根据需要设定
path: /home/git/gitlab-satellites/
gitlab_shell:
path: /home/git/gitlab-shell/
# REPOS_PATH MUST NOT BE A SYMLINK!!!
repos_path: /home/git/repositories/
hooks_path: /home/git/gitlab-shell/hooks/
##################################
# ssh端口,根据实际修改
ssh_port: 22
# 下面是编译安装git后的路径,默认文件最大大小和超时时间
git:
bin_path: /usr/local/bin/git
max_size: 524288000 # 5.megabytes
timeout: 300
unicorn.rb
,默认**/home/git**目录的不用改cp config/unicorn.rb.example config/unicorn.rb
vim config/unicorn.rb
###################################
working_directory "/home/git/gitlab" # available in 0.94.0+
listen "/home/git/gitlab/tmp/sockets/gitlab.socket", :backlog => 64
pid "/home/git/gitlab/tmp/pids/unicorn.pid"
stderr_path "/home/git/gitlab/log/unicorn.stderr.log"
stdout_path "/home/git/gitlab/log/unicorn.stdout.log"
# 默认8080端口,如果被占用自修改
listen "127.0.0.1:8080", :tcp_nopush => true
timeout 300
mkdir /home/git/gitlab-satellites
rack_attack.rb
# rack-attack 可以根据ip、域名等设置黑名单、设置访问频率。请按需配置,这里暂不配置
cp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb
# 关于这块使用附上参考博文: https://blog.csdn.net/qq_41037744/article/details/134519179
操作如下
cp config/resque.yml.example config/resque.yml
# 修改配置
vim config/resque.yml
###################################
development: redis://localhost:6379
test: redis://localhost:6379
production: unix:/var/run/redis/redis.sock
cp config/database.yml.mysql config/database.yml
vim config/database.yml
############################
production:
adapter: mysql2
encoding: utf8mb4
collation: utf8mb4_general_ci
reconnect: false
database: gitlabhq_production
pool: 10
username: root # 这里之前用git用户,但发现有下面报错提示,懒得排查直接换成root,之前没设置过密码
#password: "cX4ncpjZMUv"
#host: localhost
# socket: /tmp/mysql.sock
# 用git用户报错
Access denied for user 'git'@'localhost' (using password: YES)Please provide the root password for your mysql installation
操作如下
cd ~/gitlab
sudo gem install charlock_holmes --version '0.6.9'
#####
Fetching: charlock_holmes-0.6.9.gem (100%)
...
Installing ri documentation for charlock_holmes-0.6.9
Done installing documentation for charlock_holmes after 6 seconds
1 gem installed
# 1
vim Gemfile
source "https://rubygems.org" 改为
source "https://gems.ruby-china.com"
# source "http://mirrors.aliyun.com/rubygems"
# 2
vim Gemfile.lock
source "https://gems.ruby-china.com"
# 【1】第一波更改
### vim Gemfile.lock 行首添加
GIT
remote: https://gitee.com/hukanfa/gemnasium-gitlab-service
revision: 4f2f3cb0003c8f5938286cb7161ff93d2804f934
specs:
gemnasium-gitlab-service (0.2.6)
rugged (~> 0.21)
# 删掉
260 gemnasium-gitlab-service (0.2.6)
261 rugged (~> 0.21)
# 改为感叹号
789 gemnasium-gitlab-service!
### vim Gemfile
# 增加
gem "gemnasium-gitlab-service", git: "https://gitee.com/hukanfa/gemnasium-gitlab-service"
# 删掉
157 gem "gemnasium-gitlab-service", "~> 0.2"
# 两个文件修改mysql2的版本为 0.3.21
# 之后遇到一些依赖报错直接在上面两个文件直接删掉就行,版本过于老旧一些依赖在源中已经找不到了或者新版不支持了
# 有些版本低的依赖可打开源站所属对应依赖有哪些版本,重新指定版本
bundle install --deployment --without development test postgres puma aws wiki
gem install rdoc-data; rdoc-data --install
操作如下
# bundle exec rake gitlab:setup RAILS_ENV=production --verbose
...
Do you want to continue (yes/no)? yes
#最后初始化成功后会获得账号和密码
== Seed from /home/git/gitlab/db/fixtures/production/001_admin.rb
Administrator account created:
login.........root
password......5iveL!fe
- 检查gitLab及其环境的配置是否正确
```shell
cd ~/gitlab
bundle exec rake gitlab:env:info RAILS_ENV=production
##########
[git@hukanfa gitlab]$ bundle exec rake gitlab:env:info RAILS_ENV=production
System information
System:
Current User: git
Using RVM: no
Ruby Version: 2.2.0p0
Gem Version: 2.4.5
Bundler Version:1.17.3
Rake Version: 10.4.2
Sidekiq Version:3.3.0
GitLab information
Version: 7.14.3
Revision: 12bbae4
Directory: /home/git/gitlab
DB Adapter: mysql2
URL: http://localhost:8080
HTTP Clone URL: http://localhost:8080/some-group/some-project.git
SSH Clone URL: git@localhost:some-group/some-project.git
Using LDAP: no
Using Omniauth: no
GitLab Shell
Version: 2.7.2
Repositories: /home/git/repositories/
Hooks: /home/git/gitlab-shell/hooks/
Git: /usr/bin/git
# bundle exec rake sidekiq:start RAILS_ENV=production
# bundle exec rake gitlab:check RAILS_ENV=production
# 这里都走一遍
chmod -R ug+rwX,o-rwx /home/git/repositories/
chmod -R ug-s /home/git/repositories/
find /home/git/repositories/ -type d -print0 | sudo xargs -0 chmod g+s
sudo chmod u+rwx,g=rx,o-rwx /home/git/gitlab-satellites
操作如下
# root执行
cp lib/support/init.d/gitlab /etc/init.d/gitlab
cp lib/support/init.d/gitlab.default.example /etc/default/gitlab
cp lib/support/logrotate/gitlab /etc/logrotate.d/gitlab
chmod +x /etc/init.d/gitlab
# 配置开机启动
chkconfig --add gitlab
chkconfig gitlab on
##### 下面这里如果安装目录不是/home/git/gitlab就需要改 ########
# vim /etc/default/gitlab
# app_root="/data/$app_user/gitlab"
#无需下载
##sudo wget https://raw.github.com/gitlabhq/gitlab-recipes/master/init/sysvinit/centos/gitlab-unicorn -P /etc/init.d/
##sudo mv /etc/init.d/gitlab-unicorn /etc/init.d/gitlab
##########################
- 调整配置
```shell
# 复制配置文件
cd ~/gitlab
sudo mkdir /usr/local/nginx/conf/conf.d/ -p
sudo cp lib/support/nginx/gitlab /usr/local/nginx/conf/conf.d/
cd /usr/local/nginx/conf/conf.d/
sudo chown -R git:git .
cp gitlab gitlab.conf
vim /usr/local/nginx/conf/nginx.conf
# 修改nginx主配置
user git;
worker_processes 2;
events {
worker_connections 1024;
}
http {
include mime.types;
# 这句话加入
include conf.d/*.conf;
......
# gitlab虚拟主机的配置
vim /usr/local/nginx/conf/conf.d/gitlab.conf
server {
listen 0.0.0.0:8080 default_server;
#listen [::]:80 default_server;
server_name gitlab.hkf56.com;
# 修改日志路径
access_log /usr/local/nginx/logs/gitlab_access.log;
error_log /usr/local/nginx/logs/gitlab_error.log;
location ~ ^/(assets)/ {
root /home/git/gitlab/public;
#gzip_static on;
access_log /var/log/nginx/gitlab_access.log;
error_log /var/log/nginx/gitlab_error.log;
修改后得gitlab.conf
内容如下
upstream gitlab {
server unix:/home/git/gitlab/tmp/sockets/gitlab.socket fail_timeout=0;
}
server {
listen 80;
server_name gitlab.hkf56.com;
server_tokens off;
root /home/git/gitlab/public;
client_max_body_size 20m;
access_log logs/gitlab_access.log;
error_log logs/gitlab_error.log;
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 ~ ^/(assets)/ {
root /home/git/gitlab/public;
#gzip_static on;
expires max;
add_header Cache-Control public;
}
error_page 502 /502.html;
}
su - git && cd ~/gitlab
bundle exec rake assets:precompile RAILS_ENV=production
# redis的socket文件授权
chmod 777 /var/run/redis/redis.sock
# 启动gitlab服务
sudo service gitlab restart
#####
...
The GitLab Unicorn web server with pid 49907 is running.
The GitLab Sidekiq job dispatcher with pid 49938 is running.
GitLab and all its components are up and running.
# 查看端口
netstat -antlp |grep 8080
# 启动nginx
sudo /usr/local/nginx/sbin/nginx
操作如下
# window 路径如下 C:\Windows\System32\drivers\etc\hosts
192.168.26.8 gitlab.hkf56.com
# 初始管理员帐号密码为
root 5iveL!fe
注
:此部分内容作者本人并未测试过,有需要请自行完成配置并测试
操作如下
cd ~/gitlab/
vim config/environments/production.rb
config.action_mailer.delivery_method = :smtp
cp config/initializers/smtp_settings.rb.sample config/initializers/smtp_settings.rb
vim config/initializers/smtp_settings.rb
if Rails.env.production?
Gitlab::Application.config.action_mailer.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
address: "smtp.163.com",
port: 25,
user_name: "[email protected]",
password: "password",
domain: "smtp.163.com",
authentication: :plain,
enable_starttls_auto: true,
#openssl_verify_mode: 'peer' # See ActionMailer documentation for other possible options
}
end
cd ~/gitlab/
vim config/environments/production.rb
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => "smtp.163.com",
:port => "25",
:domain => "smtp.163.com",
:authentication => :plain,
:user_name => "[email protected]",
:password => "xxx",
:enable_starttls_auto => true
}
# 编辑config/gitlab.yml 对应修改一下配置
email_from: [email protected]
email_display_name: GitLab
email_reply_to:[email protected]