zoukankan      html  css  js  c++  java
  • Ubuntu Docker 简单安装 GitLab

    相关博文:

    服务器版本 Ubuntu 16.04 LTS。

    1. 安装和配置

    安装命令:

    sudo docker run --detach 
        --hostname 40.125.206.47 
        --publish 443:443 --publish 80:80 --publish 8888:22 
        --name gitlab 
        --restart always 
        --volume /srv/gitlab/config:/etc/gitlab 
        --volume /srv/gitlab/logs:/var/log/gitlab 
        --volume /srv/gitlab/data:/var/opt/gitlab 
        gitlab/gitlab-ce:latest
    

    参数说明:

    • --detach: 设置容器后台运行
    • --hostname: 设置容器的 hostname
    • --publish: 端口转发规则(80:Http 访问端口,443:Https 访问端口,8888:主机的 ssh 访问端口,22:Docker 容器中 ssh 访问端口)
    • --name:容器名称
    • --restart always:每次启动容器就重启GitLab
    • --volume: 共享目录挂载,即 docker 容器内外数据共享(/srv/gitlab/data: 应用程序数据,/srv/gitlab/logs:GitLab 的 log,/srv/gitlab/config:GitLab 的配置文件)
    • --e:配置 Gitlab 运行的环境变量

    安装成功之后,编辑vim /srv/gitlab/config/gitlab.rb,修改(默认22修改为8888):

    gitlab_rails['gitlab_shell_ssh_port'] = 8888
    

    配置修改后,就可以重启 Gitlab 容器了:docker restart gitlab,容器重启 Gitlab 也会进行重启。

    浏览器打开:http://40.125.206.47,完成 Gitlab 初始密码操作。

    然后就可以克隆和修改项目了(team为 Group 名称):

    git clone ssh://git@40.125.206.47:8888/team/hwapp.git
    

    2. 邮箱配置

    接着进行 Gitlab 的邮箱配置,需要配置 SMTP,官方配置示例:SMTP settings

    我使用的是 QQ 企业邮箱,配置示例:

    gitlab_rails['smtp_enable'] = true
    gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
    gitlab_rails['smtp_port'] = 465
    gitlab_rails['smtp_user_name'] = "xxx@xxx.com"
    gitlab_rails['smtp_password'] = "xxxx"
    gitlab_rails['smtp_authentication'] = "login"
    gitlab_rails['smtp_enable_starttls_auto'] = true
    gitlab_rails['smtp_tls'] = true
    
    # gitlab_email_from 为邮件发送账号,gitlab_email_display_name 为邮件发送人名称
    gitlab_rails['gitlab_email_enabled'] = true
    gitlab_rails['gitlab_email_from'] = 'xishuai@aiqinhaigou.com'
    gitlab_rails['gitlab_email_display_name'] = 'gitlab-notify'
    # gitlab_rails['gitlab_email_reply_to'] = 'noreply@example.com'
    # gitlab_rails['gitlab_email_subject_suffix'] = ''
    

    3. 更新版本

    邮箱配置好之后,重启 Gitlab 容器,我们可以进入 Gitlab 容器,进行邮件发送测试(发送标题和正文不能包含中文):

    // 进入容器
    $ docker exec -it gitlab bash
    // 进入控制台
    $ gitlab-rails console
    // 发送测试邮件
    $ Notify.test_email('收件人邮箱', '邮件标题', '邮件正文').deliver_now
    

    发送成功结果:

    最后,更新 Gitlab 到最新版本命令(数据和配置不会发生变化):

    // 停止 gitlab 容器
    $ sudo docker stop gitlab
    // 删除 gitlab 容器
    $ sudo docker rm gitlab
    // 拉取最新的 gitlab 镜像
    $ sudo docker pull gitlab/gitlab-ce:latest
    
    // 重新执行一开始的安装命令
    

    参考资料:

  • 相关阅读:
    js setTimeout的第三个参数
    vue 实现跑马灯 transform
    vue 使用闭包实现防抖
    js 获取输入日期的几个月前的日期
    js 作用域和作用域链
    退役划水(10)
    退役划水(9)
    解决 SpringBoot Elasticsearch 7.x 聚合查询遇到的问题
    ElasticSearch7.4.2:RestHighLevelClient应用
    RestHighLevelClient操作ES的API
  • 原文地址:https://www.cnblogs.com/xishuai/p/ubuntu-install-gitlab-with-docker.html
Copyright © 2011-2022 走看看