第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Git服務(wù)器搭建及自動(dòng)化部署

標(biāo)簽:
Linux 前端工具

Git 简单易用,为了方便自己,满足好奇心,我学习了下如何搭建git服务器并实现自动化部署,在这里将自己遇到的坑跟大家分享一下。

系统说明

  • 服务器: 阿里云 ECS 服务器
  • 操作系统: CentOS 7.2 64位
  • 操作说明:熟悉 linux 基本操作—— yum 安装,vim 编辑,chown 权限设置等.

搭建步骤

  1. 在服务器上安装 git

    yum install git

    注:如果权限不够,可加 sudo.

  2. 添加 git 用户

    此处 git用户是指系统中的 git 应用程序,而不是项目的组员。可执行命令:

    sudo adduser git

    也可添加用户密码

    sudo passwd git
  3. 禁止 shell 登录

    vim 打开 /etc/passwd 目录,修改

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

    改成

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

    说明:出于安全考虑,我们需要禁止他人登录shell,但我们的组员仍可通过 ssh 正常使用git.

  4. 初始化 git 远程仓库

    在你服务器上创建一个 git 远程仓库并初始化:

    git init --bare test.git

    例如,选择 /usr/src/app 文件夹 ,初始化创建仓库 test.git,结果如下:
    alt

  5. 修改远程仓库用户所有权
    由于初始化创建的时候,文件所有权归属当前用户(如下图,我当前使用的是 root),为了是 git 程序有操作权限,我们将所有权改为 git 拥有.
    alt

    sudo chown -R git:git test.git

    结果如下:

    alt

  6. 添加用户 ssh 登录权限
    将项目组员的 ssh 公钥依次存储到 /home/git/.ssh/authorized_keys 文件中,一行一个。如果人多的话,可以采用 gitosis 进行管理,配置可参考官方文档,此处暂不作介绍。

  7. 本地 clone 远程仓库
    前面6步均在服务器上进行操作,这一步就可以在本地进行了,执行命令拉取代码:
    git clone git@server:/usr/src/app/test.git

    说明:server 是你服务器的公网 ip ,/usr/src/app/test.git 是上面创建的远程仓库路径.

自动化部署

git hook 会在接收到 push 之后触发特定事件。我们可以利用该特性,使用 bash 脚本来进行自动化部署。

  1. 创建脚本

    现在我们进入 /usr/src/app/test.git 目录下的 hooks 文件夹,编辑脚本:

    vim post-receive

    具体内容如下:

    #!/bin/sh
    # 删除 GIT_DIR 环境变量,避免干扰
    unset GIT_DIR
    
    # 增加生产环境项目路径环境变量
    WORKPATH=/usr/share/nginx/test
    
    # 进入生产目录
    cd $WORKPATH
    git add . -A && git stash
    git pull origin master
    
    echo 'done!!!'

    说明:此处我将项目部署在 /usr/share/nginx/test 目录下,可先进入 `/usr/share/nginx 目录 clone 代码.

  2. 修改权限
    chown -R git:git post-receive
    chmod +x post-receive

    说明:chmod +x 用来增加执行权限

踩坑说明

期间遇到的坑大多是 权限 问题导致的,用 chownchmod 修改所有权和操作权限即可。

git 在不同系统上的安装可以自行搜索,各类系统都有自己的包管理工具。

参考文章

搭建Git服务器-廖雪峰

使用 Git Hook 实现网站的自动部署-推酷

點(diǎn)擊查看更多內(nèi)容
4人點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專(zhuān)欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消