centos7下安装composer和git部署
一、安装composer
composer 属于php的包依赖管理工具。
1、进入Composer国内镜像网站文档页查看安装方法:
https://docs.phpcomposer.com/00-intro.html
2、在centOS系统中进入特定目录执行以下命令:
cd /usr/local/composer curl -sS https://getcomposer.org/installer | php
3、将composer加到/usr/local/bin中,避免执行 php composer.phar
mv composer.phar /usr/local/bin/composer 如果执行composer时报错: 出错: /usr/bin/env: php: 没有那个文件或目录 就添加一个软链接即可: ln -s /usr/local/php/bin/php /usr/local/bin/php
4、多个版本php时,可以指定php版本执行composer
/usr/local/php72/bin/php composer.phar
5、检查是否安装成功
composer --version
二、安装部署git
(一)、yum命令安装:
sudo yum install -y git
git --version
此方法简单,并且会自动安装依赖的包,而且会从源里安装最新的版本(不过不一定是最新的git)。
(二)、创建组、用户并给用户设置密码
1.创建一个git用户组
groupadd git
2.创建一个git用户并添加到git用户组
useradd git -g git
3.设置密码
passwd git
输入你的密码
(三)新建git的仓库,并设置权限,用户组为git (如果你的git仓库所在目录不一样,改成对应的目录)
chgrp [-R] 所属组 文件
chown [-R] 所有者:所属组 文件或目录
-R(注意是大写): 递归修改,对当前目录文件和子目录当中文件一并修改。
chmod 用于改变文件或目录权限 详情
cd /var
chown -R git:git git
chmod 755 git
(四)创建一个裸仓库(空仓库)
git init --bare 项目名.git
chown -R git:git /var/git/项目名.git
chmod 775 /var/git/项目名.git
#以后每创建一个新的仓库.都需要执行上面的命令(修改仓库所属用户为git)
(五)禁用git用户的shell登录,防止用户通过Git用户登录服务器
编辑 /etc/passwd 文件,将文件后边的bash改成git-shell
vim /etc/passwd
将("1001"是一个变量,找到 "git: “,修改最后”:"后边的bash改成git-shell)
git:x:1001:1001::/home/git:/bin/bash
git:x:1001:1001::/home/git:/usr/bin/git-shell
(这里地址可以用whereis git进行查询)
后按 "Esc"键 退出编辑 , 后输入 “:wq” 保存编辑操作退出
(六)、收集所有需要登录的用户公钥文件
cd /home/git/
mkdir .ssh #创建文件夹
chmod 700 .ssh
touch .ssh/authorized_keys #创建用于收集所有需要登录的用户公钥文件
chmod 600 .ssh/authorized_keys
(注意:搭建到后面测试的时候,一定确保 authorized_keys 文件权限一定是 600 不然后面会重复提示输入密码)
(七)创建证书,免密码登录(git客户端)
收集所有需要登录的用户的公钥(id_rsa.pub)文件,把所有公钥导入到/home/git/.ssh/authorized_keys 文件内,一行一个。
1、windows下生产key
打开git客户端,输入
ssh-keygen -t rsa -C "xx@xx.com"
首先 ssh-keygen 会确认密钥的存储位置和文件名(默认是 .ssh/id_rsa),然后他会要求你输入两次密钥口令,留空即可。所以一般选用默认,全部回车即可。
生成的key文件的位置
2、将id_rsa.pub公钥中的内容添加到Git仓库设置中
1)进入目录C:\Users\ivy\.ssh
2)把id_rsa.pub文件上传到 git服务器 路径 "/tmp/id_rsa.pub"
3)在git服务器上执行命令
cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys
(八).Git服务器打开RSA认证
在Git服务器上首先需要将/etc/ssh/sshd_config中将RSA认证打开
root用户操作
vim /etc/ssh/sshd_config
添加这三项,(注释掉的打开注释,没有的要手动敲)
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile /home/git/.ssh/authorized_keys
保存并重启 sshd 服务:
systemctl restart sshd.service
(九)本地克隆仓库(git客户端)
$ git clone git@your-ip:/var/git/test.git #例如 git clone git@192.168.1.222:/var/git/test.git
Cloning into 'test'...
warning: You appear to have cloned an empty repository.
Checking connectivity... done.
your-ip 为您 Git 所在服务器 ip