• CentOS 7安装Gogs代码仓库


    1、准备环境

    1. MySQL
    2. Gogs二进制包
    3. git
    4. git用户
    5. nginx
    6. 域名
    7. ssl证书
    

    1.1 创建gogs用户和对应的数据库并授权

    create database `gogs` character set utf8 collate utf8_general_ci;
    
    create user 'gogs'@'localhost' identified by '密码';
    create user 'gogs'@'127.0.0.1' identified by '密码';
    grant all privileges on gogs.* to 'gogs'@'localhost';
    grant all privileges on gogs.* to 'gogs'@'127.0.0.1';
    flush privileges;
    

    1.2 下载Gogs二进制包

    wget https://dl.gogs.io/0.11.91/gogs_0.11.91_linux_amd64.tar.gz
    

    1.3 安装git

    yum install git -y
    

    1.4 添加git用户

    useradd git
    echo "密码"|sdtin passwd git
    

    1.5 安装nginx

    yum install nginx -y
    

    2、安装Gogs

    2.1 切换到git用户

    su - git
    

    2.2 安装配置Gogs

    # 将安装包移动到git家目录
    cp /root/gogs_0.11.91_linux_amd64.tar.gz /home/git
    
    # 解压安装包
    tar xf gogs_0.11.91_linux_amd64.tar.gz
    cd gogs/
    
    # 开始安装
    ./gogs web
    

    2.3 浏览器上配置

    浏览器打开http://server_ip:3000开始配置:

    Bsfhwd-f0ALza-

    如上图,根据实际情况进行填写,ssh端口我这里改成了2222是为了避免和sshd服务的端口冲突。

    确认之后点击立即安装即可,如果有报错,根据报错信息进行修改之后再次点击立即安装即可。

    2.4 注册用户

    建议安装完成之后直接到首页选择注册用户,因为之前没有创建管理员并且默认第一个注册的用户就是管理员。

    eJZLCr-uvb7hB-

    选择右上角的注册:

    qa8wzU-2R7QSF-

    填写好信息之后点击创建用户。马上就会跳转到登录界面:

    2B5e9V-oW2swa-

    登录之后进入首页:

    image-20200719111719135-nWR4xr-

    至此,安装完成!使用方法与GitLab和GitHub相差不大。

    3、其他配置

    3.1 开启Gogs的ssh连接

    # 将app.ini中START_SSH_SERVER改为true即可,端口建议改成其他不和sshd服务冲突的端口。
    sed -i.bak 's#START_SSH_SERVER = false#START_SSH_SERVER = true#g' /home/git/gogs/custom/conf/app.ini
    

    3.2 使用nginx代理

    cat /etc/nginx/conf.d/gogs.conf
    
    server {
        server_name 域名或IP;
        listen 80; #或者443,如果你使用 HTTPS 的话
        # ssl on; 是否启用加密连接
        # 如果你使用HTTPS,还需要填写ssl_certificate和ssl_certificate_key
     
        location / { #如果你希望通过子路径访问,此处修改为子路径,注意以/开头和结束
            proxy_pass http://127.0.0.1:3000/;
        }
    }
    

    语法检查重载配置文件

    nginx -t
    systemctl reload nginx.service
    

    3.4 域名解析

    在对应域名供应商的DNS解析页面添加相应的A记录即可(要和gogs.conf中的配置对应)。

    3.5 ssl证书

    有多种方法实现:

    • 付费的
    • 免费的
    3.5.1 付费的ssl证书

    去对应的ssl代理商购买,比如阿里云、腾讯云、又拍云等等。

    3.5.2 免费的ssl证书
    • 阿里云、腾讯云、又拍云等代理商提供一个用户限定个数的免费单域名ssl证书
    • 通过各种工具获取免费的ssl证书,例如 certbot之类的

    4、查看效果

    yuPpWC-njD1gh-

  • 相关阅读:
    SQLiteDatabase 源码
    SQLiteOpenHelper 源码
    Java同步机制总结--synchronized
    [Swift A]
    [Swift A]-问号&感叹号
    [Swift A]
    [Swift A]
    android 屏幕适配
    2014年度加班时间
    nodejs初学-----helloworld
  • 原文地址:https://www.cnblogs.com/jie-fang/p/13339145.html
Copyright © 2020-2023  润新知