ubuntu使用scm-manager+java搭建git服务器并使用hook实现网站自动部署[ubuntu部署]

来源:赵克立博客 分类: Linux 标签:scm-managerUbuntu发布时间:2018-12-26 10:47:33最后更新:2019-03-02 15:37:56浏览:457
版权声明:
本文为博主原创文章,转载请声明原文链接...谢谢。o_0。
温馨提示:
技术类文章有它的时效性,请留意文章更新时间以及软件的版本
更新时间:
2019-03-02 15:37:56

环境配置

工具安装

scm-manager

git

jdk

sudo apt-get install git

git安装完成后要设置下

git config --global user.email "735579768@qq.com"
git config --global user.name "ubuntu" 
git config --add core.filemode false

最后一条命令是为啦忽略使用chmod命令修改文件权限对文件的改动

另外两个安装方法如下

安装java环境

下载linux 中的jdk包,弄清楚自己系统是32 64(为什么直接装jdk呢,因为我第一次只装啦jre但是启动scm-server的时候报错啦,具体看文章最下面截图)

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

image.png

下载后放到下载目录中,也可以放其它目录,然后解压压缩包到指定路径 /usr/lib/java,如果没有java目录的话可以用下面命令创建一个

sudo mkdir /usr/lib/java

如果使用ubuntu命令行的话可以使用下面命令下载,注意后面是从页面中复制出来的地址

wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz

使用命令解压,注意如果下载的版本跟我的不一样自己修改下

sudo tar -xzvf /home/jdk-8u191-linux-x64.tar.gz -C  /usr/lib/java

接下来需要使用vim或gedit来修改  /etc/profile 导出环境变量

sudo gedit /etc/profile

添加以下内容

export JAVA_HOME=/usr/lib/java/jdk1.8.0_191
export JRE_HOME=${JAVA_HOME}/jre   
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib    
export PATH=${JAVA_HOME}/bin:$PATH

不要修改 /etc/environment  这个配置文件,否则导致开机登陆不了

设置jre的路径,方便其它软件能找到

sudo update-alternatives --install /usr/bin/java  java  /usr/lib/java/jdk1.8.0_191/bin/java 300   
sudo update-alternatives --install /usr/bin/javac  javac  /usr/lib/java/jdk1.8.0_191/bin/javac 300

image.png

安装完成

如果你的系统中有多个版本的jre的话,可以用下面命令继续配置哪个版本的为默认的

sudo update-alternatives --config java

我的因为只有这一个所以显示如下

image.png

如果有多个版本的话就会显示如下所示

image.png

选择要使用的版本就可以啦

查看是否安装成功

java -version

image.png


scm-manager安装方法

查看地址 https://bitbucket.org/sdorra/scm-manager/wiki/RPM%20and%20DEB%20packages

# add the scm-manager repository
echo "echo 'deb http://maven.scm-manager.org/nexus/content/repositories/releases ./' >> /etc/apt/sources.list" | sudo sh
# install gpg key for the scm-manager repository
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 D742B261
# update
sudo apt-get update
# install scm-server
sudo apt-get install scm-server

启动scm-server

sudo service scm-server start

如果没安装java的话会提示下面错误

image.png

另外如果只安装啦jre后会出现哪下提示,具体原因可能跟设置有关,也没时间搞清楚为 啥啦,直接装jdk

image.png

web部署

打开对应的git库的位置 /var/lib/scm/repositories/git/你的名字/hooks 添加  post-receive.sh  文件并写入下面内容

默认情况下路径下的 repositories 你是没有权限查看的,需要设置下权限

sudo chmod -R 777 /var/lib/scm/repositories

然后写push后要执行的命令

cd /var/www/你的web目录
git  pull http://scmadmin:scmadmin@localhost:8080/scm/git/ank

配置已经完成啦,最后一步,提前使用 git clone 命令把git代码先下载到web目录里,这样以后只要代码push上来这个目录就会更新


微信号:kelicom QQ群:215861553 紧急求助须知
点击更换验证码
Win32/PHP/JS/Android/Python