安装运行
docker run -d -name gitlab -p 22:22 88:80 --restart always gitlab/gitlab-ce
我这里是把服务器的22
端口改成222
, 把22
给 gitlab
使用
第一次安装可能时间比较久,状态一直是unhealthy
,网页也打不开,第一次没设置--restart always
还出错停止了.
抱着侥幸的心理重启,后来再没出现过问题.
配置
涉及到的位置都是修改这个文件,修改完成后运行 gitlab-ctl reconfigure
重新加载配置/etc/gitlab/gitlab.rb
邮箱配置
-- 尝试1 使用本机直接发信,报错没安装 sendmail
尝试安装了,还是不能发送, 放弃尝试
-- 尝试2 使用 docker 的 smtp服务 namshi/smtp:latest
通过 gitlab
连接后发送,结果发了几次成功,后来对方服务器拒收了
-- 尝试3(最终方案) 使用 yahoo 邮箱的 smtp服务
smtp设置详细参考官方 https://docs.gitlab.com/omnibus/settings/smtp.html
我这里是这样设置的
gitlab_rails['gitlab_email_from'] = 'robo_kandai@yahoo.co.jp'
gitlab_rails['gitlab_email_reply_to'] = 'robo_kandai@yahoo.co.jp'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.mail.yahoo.co.jp"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "robo_kandai@yahoo.co.jp"
gitlab_rails['smtp_password'] = "**********"
gitlab_rails['smtp_domain'] = "mail.yahoo.co.jp"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
关键是最上面两行, 之前一直没加上就一直报错, 参考说明后加上就好了,看对方邮箱而定,有些邮箱不写上面那个就拒收
发送测试邮件
gitlab-rails console
启动 gitlab 命令行 执行Notify.test_email('pch18@qq.com', 'Message Subject', 'Message Body').deliver_now
配置 访问地址
目前使用没问题,但是仓库地址等等,都是按照docker主机的hostname生成的,对使用影响很大
设置容器的 hostname
即可