[原创: 云服务器实战系列5] 项目初始化: Centos7 Git Server配置

315 阅读2分钟

上一篇[原创: 云服务器实战系列4] 域名购买&解析

[原创: 云服务器实战系列3] 基础软件安装&环境配置中, 我们已经完成了对Centos7中基础的软件环境搭建. 此时我们将进行项目开始前的准备工作:

  1. 在云服务器中创建git库, 用于存储代码
  2. 本地克隆
  3. 创建基本的前后端代码
  4. 完成云服务器端git hook相关配置, 以实现代码提交后能够自动执行相关部署工作

Git Server配置免密登录

1. 客户端生成公钥

打开Git bash, 输入以下指令:

ssh-keygen -t rsa -C

此时, 会在~/.ssh/目录下生成一个默认的id_rsa.pub文件.

2. Centos7 服务器端配置

这里省略了git的安装过程, 相关安装过程可以参考: [原创: 云服务器实战系列3] 基础软件安装&环境配置

在云服务器端执行以下操作

1) 创建git用户

adduser git

2) 配置git用户的ssh访问设置

cd /home/git
mkdir .ssh

3) 创建.ssh文件夹

chmod 700 .ssh 

将.ssh文件夹权限设为700, 即允许本用户和root用户拥有读, 写, 执行权限

4) 在.ssh文件夹内创建authorized_keys

touch .ssh/authorized_keys
chmod 600 .ssh/authorized_keys

5) 将文件夹授权给git用户和git组

cd /home
chown -R git:git git

6) 将存放git库文件夹归为git所有

chown git:git /usr/local/projects/*

7) 禁用shell登录

如果希望git用户不能登录shell,就要修改git用户的权限.

vi /etc/passwd

git:x:1000:1000::/home/git:/bin/bash

改为

git:x:1000:1000::/home/git:/bin/git-shell

8) 将第2步在客户端生成的公钥写入/home/git/.ssh/authorized_keys 文件内

vi /home/git/.ssh/authorized_keys

将客户端生成的公钥文件id_rsa.pub内容插入到authorized_keys

3. 在云服务器创建git库

[account@yunServer projects]# git init --bare bt_django.git
Initialized empty Git repository in /usr/local/projects/bt_django.git/
[account@yunServer projects]# git init --bare ft_vue.git
Initialized empty Git repository in /usr/local/projects/ft_vue.git/
[account@yunServer projects]# dir
bt_django.git  ft_vue.git
[account@yunServer projects]# chown -R git:git /usr/local/projects/*

4. 本地克隆代码

James@James-PC MINGW64 /d/Projects
$ git clone git@120.x.x.1:/usr/local/projects/bt_django.git
Cloning into 'bt_django'...
warning: You appear to have cloned an empty repository.

James@James-PC MINGW64 /d/Projects
$ git clone git@120.x.x.1:/usr/local/projects/ft_vue.git
Cloning into 'ft_vue'...
warning: You appear to have cloned an empty repository.

Git Server hook配置

1. 初始化django工程以及云服务器django部署环境搭建

详细的步骤, 请阅[原创: 云服务器实战系列6] CentOS7 + Python3 + Django + Mysql部署环境搭建&django项目初始化

2. git hook配置

!未完, 待续!