• Centos7 用gogs搭建git仓库


    0、安装步骤

    先安装依赖,然后创建数据库,创建git用户,安装Gogs软件,设置启动,访问web界面进行配置

    一、Gogs依赖环境

    安装Gogs之前需要配置相应的依赖环境,官网介绍的依赖环境如下:

    1. 数据库(选择以下一项):
      MySQL:版本 >= 5.5.3
      PostgreSQL
      或者 什么都不安装 直接使用 SQLite3 或 TiDB

    2. git(bash):
      服务端和客户端均需版本 >= 1.7.1
      Windows 系统建议使用最新版

    3. SSH 服务器:
      如果您只使用 HTTP/HTTPS 或者内置 SSH 服务器的话请忽略此项
      推荐 Windows 系统使用 Cygwin OpenSSH 或 Copssh

    4. Nginx反向代理(可选)
      或者使用Gogs只监听本地ip,使用nginx做反向代理,防火请开启且屏蔽该端口

    二、安装环境

    IP:192.168.0.168
    系统:Centos7 x86_64
    Git版本:git-1.8.3.1-13.el7.x86_64
    Golang版本:golang.x86_64 0:1.11.5-1.el7
    Gogs版本:ggogs_0.11.91_linux_amd64.tar.gz
    Mysql版本:mysql-community-server-5.7.27-1.el7.x86_64.rpm

    1)防火墙放行端口或者关闭防火墙
    systemctl stop firewalld.service
    2)关闭selinux

    setenforce 0 
    sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
    

    三、搭建Git服务器仓库

    1、安装go语言依赖和git服务

    yum -y install go git
    

    2、安装MySQL数据库

    若采用SQLite3,则这一步可以省略
    yum源上没有mysql-server。所以必须去官网下载,这里用wget命令,直接获取mysql社区源进行安装

    # 下载rpm包
    wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
    # 安装rpm包
    yum -y install mysql57-community-release-el7-10.noarch.rpm
    # 安装mysql
    yum -y install mysql-community-server
    # 启动
    systemctl start mysqld.service
    # 设置开机启动
    systemctl enable mysqld
    # 查看服务端口号
    netstat -tulnp | grep mysqld
    # 查看数据库默认密码 
    grep "password" /var/log/mysqld.log
    # 登录数据库 
    mysql -uroot -p password
    # 修改数据库登陆密码(新密码一定要按照数据库的密码复杂要求来设置)
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'ABCabc123...';
    flush privileges;
    
    # 初始化MySQL数据库
    mysql_secure_installation
    # 执行完初始化命令后需要输入数据库root用户密码,然后默认一路回车即可
    
    # 创建gogs库(使用utf8mb4字符集和InnoDB引擎,mysql5.7默认是InnoDB引擎)
    CREATE DATABASE IF NOT EXISTS gogs CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
    # 创建用户
    CREATE USER 'gogs'@'localhost' IDENTIFIED BY 'password';
    
    # gogs用户对gogs库下所有表拥有ALL PRIVILEGES权限
    grant all privileges on gogs.* to 'gogs'@'localhost' identified by 'password' with grant option;
    flush privileges;
    

    3、安装Gogs

    # 创建git系统用户 
    adduser git
    # 修改git用户密码为123
    passwd git
    
    # 后期安全起见,可设置禁止git用户远程登陆服务器:/sbin/nologin
    
    # 切换git用户登录创建目录,这个目录是存放普通用户上传代码公钥认证的目录
    su - git
    cd /home/git
    mkdir ~/.ssh 
    wget https://cdn.gogs.io/0.11.91/gogs_0.11.91_linux_amd64.tar.gz
    tar -zxv -f gogs_0.11.91_linux_amd64.tar.gz
    cd gogs
    
    # 用git用户启动gogs服务方式
    ./gogs web &
    
    # 使用system方式启动,切换到root用户操作.建议使用这种方式管理gogs服务
    
    # 给脚本普通用户和root用户执行权限
    chmod u+x /home/git/gogs/scripts/systemd/gogs.service
    
    # 拷贝gogs启动脚本到system下
    cp /home/git/gogs/scripts/systemd/gogs.service /usr/lib/systemd/system/
    
    # 启动gogs服务
    systemctl start gogs.service
    
    # 关闭gogs服务
    systemctl stop gogs.service
    
    # 重启gogs服务
    systemctl restart gogs.service
    
    

    访问gogs的web安装界面并安装gogs,访问地址:http://192.168.0.168:3000
    数据库配置连接:数据库类型,数据库主机,数据库用户,数据库用户密码,数据库名称
    应用的基本设置:应用名称,仓库根目录,运行系统用户,域名,SSH端口号,HTTP端口号,应用URL,日志路径
    自动选择设置:启用离线模式,禁用Gravatar服务,启动登陆访问控制
    设置管理员账号,密码和管理员邮箱,sandu:123456,admin@qq.con

    重新使用web访问这个网址

  • 相关阅读:
    poi隐藏列
    凯西太太的果园
    java中不可变对象深入理解
    excel添加空白行的快捷键
    如何在多个页面中,引入一个公共组件
    对后端返回的数据进行适配
    我与时间管理的故事
    在前端团队的那些日子(初见)
    我是这样做时间管理的(下)
    我是这样做时间管理的(上)
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/11351984.html
Copyright © 2020-2023  润新知