现在的位置: 首页 > 综合 > 正文

lamp+svnmanager+artifactory安装

2013年02月26日 ⁄ 综合 ⁄ 共 5274字 ⁄ 字号 评论关闭

环境:ubuntu11.04
用到的软件:php5,mysql-server,artifactory ...

apache2的安装与卸载
如果你的电脑上没有安装apache2,则使用命令
sudo apt-get install apache2
sudo apt-get install apache2.2-common apache2-utils
sudo apt-get install apache2-mpm-prefork
sudo apt-get install apache2-utils

当你想卸载apache2时,使用命令
sudo apt-get autoremove --purge apache2 有时可能卸载不完全,只能卸载几十kb的东西而已,
这时候需要命令
sudo apt-get autoremove --purge apache2.2-common ,这样可以将几十兆的apache2给完全卸载。卸载apache2需要将关联的软件都卸载,才能将apache2卸载干净。

安装svn
使用如下命令获取svn
sudo apt-get install libapache2-svn
sudo apt-get install libapache2-mod-auth-pam(可选,用于PAM)
sudo apt-get install libapache2-mod-auth-sys-group(可选,用于PAM)
sudo apt-get install subversion
sudo apt-get install subversion-tools

接着建立svn root目录:
sudo mkdir -p /opt/svnroot
初始化:
sudo svnadmin create /opt/svnroot
授予 Apache(www-data) 使用者存取的权限:
sudo chown -R www-data:www-data /opt/svnroot
修改apache2的设定:
sudo gedit /etc/apache2/mods-available/dav_svn.conf
在文件中添加以下内容
<Location /svnroot>
DAV svn
SVNPath /opt/svnroot
AuthType Basic
AuthName "subversion repository"
AuthUserFile /etc/apache2/dav_svn.passwd  #密码文件
AuthzSVNAccessFile /etc/apache2/dav_svn.authz #授权文件,访问权限文件
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
</Location>

添加好上述内容后保存退出,然后重启apache
sudo /etc/init.d/apache2 restart
在/etc/apache2/sites-available/下创建dev-svn文件,添加如下内容:
<Location /svnroot>     
           DAV svn     
           #/srv/svn是你的svn版本库路径     
           SVNPath /opt/svnroot     
    
           AuthType Basic     
           AuthName "Subversion Repository"    
           AuthUserFile /etc/apache2/dav_svn.passwd     
    
           AuthzSVNAccessFile /etc/apache2/dav_svn.authz     
           #SVNListParentPath On     
          Require valid-user     
 </Location> 
sudo chown -R www-data.www-data /opt/svnroot  
接下来,创建 /etc/apache2/dav_svn.passwd 文件,
sudo htpasswd -c /etc/apache2/dav_svn.passwd username  #username是你访问的用户名
回车之后提示那输入两次密码,两次输入完毕之后该用户就建立了。
创建 /etc/apache2/dav_svn.authz文件
sudo touch /etc/apache2/dav_svn.authz
例如,你可以输入一下内容:
[groups]
admin=username

[/]
@admin=rw
*=r

[yourrepositoryname:/]
@admin=rw
*=r

这些内容表示授权用户可以访问根目录和你创建的仓库,并具有相应的读写权限
为确保svn有足够的访问权限,可对dav_svn.passwd 和 dav_svn.authz进行权限修改
sudo chmod 777 /etc/apache2/dav_svn.passwd /etc/apache2/dav_svn.authz
访问方式为,在浏览器输入 http://localhost/svnroot 你就可以看见目录下的东西了

可以从命令行提交一个项目到svnroot目录下:
svn import -m "first" /home/username/test.txt http://localhost/svnroot/test_name
删除命令为:
svn delete -m "delete" http://localhost/svnroot/test_name
至此,svn算是配置完成了

接下来配置svnmanager
在配置之前,需要安装好apache2,php5,mysql-server,并下载好svnmanager
sudo apt-get install libapache2-mod-php5 php5 php5-cli php5-common
sudo apt-get install php-pear
sudo pear install -a VersionControl_SVN-0.3.3
sudo apt-get install mysql-server
让apache、php支持 mysql
sudo apt-get install libapache2-mod-auth-mysql
sudo apt-get install php5-mysql
svnmanager的下载地址为:

http://sourceforge.net/projects/svnmanager/files/

svnmanager下载后解压到 /var/www/ 目录下,并将该文件夹重命名为svnmanager,接着进入该目录
复制config.php.linux文件为config.php
命令为:sudo cp config.php.linux config.php
里面有几个需要修改的地方:
$svn_config_dir =
"/opt/svnroot";
$svn_repos_loc =
"/opt";
$svn_passwd_file =
"/etc/apache2/dav_svn.passwd";
$svn_access_file =
"/etc/apache2/dav_svn.authz";
...
$dsn = "mysql://svnmanager:123456@localhost/svnmanager";   #mysql://username:password@hostname/databasename
以上是本人修改后的结果,可参照着做。注意,此时的mysql并没有创建svnmanager数据库,接下来要创建该数据库。
进入mysql数据库:
mysql -u root -p
输入密码1123456
Mysql>create database svnmanager;   
Mysql>grant all privileges on svnmanager.* to 'svnmanager'@'localhost' identified by '123456';   
Mysql>FLUSH PRIVILEGES;   
Mysql>quit; 
以上mysql的操作是将svnmanager数据库的所有操作权限都赋给svnmanager用户,访问密码为123456.

将/etc/php5/apache2下面的php.ini中 extendsion=mysql.so这一行的#去掉,保存退出
sudo /etc/init.d/apache2 restart
至此apache2+php+mysql的环境就完成了。
访问svnmanager:

http://localhost/svnmanager

svnmanager使用需要注意的地方:
首次登录用户名密码均为admin,登录后需创建一个账户,因为admin账户只能登录一次,之后便失效了。
svnmanager使用介绍:  http://wangxc.iteye.com/blog/666167
先向svnroot上传一个testsvn工程(建议上传的工程名字为小写),在svnmanager的Repository Admin创建一个Repository,名字必须和工程名一样,
假设创建了用户testuser,组testgroup,将testuser加入testgroup,如果希望testgroup能够访问testsvn,则在Repository Admin选项中,选择group privileges,选择相应的工程名,接着选择testgroup组,在path那里选择/(这个很关键),然后再选择相应的读写权限,add,再对testgroup选择path 中的testsvn,再选择权限,done,至此,testuser就可以访问svnroot下的项目了。
此时你可以查看/etc/apache2/下面的dav_svn.passwd 和 dav_svn.authz 文件,发现dav_svn.passwd下面多了新添加的用户名和密码,dav_svn.authz下面也出现了相应的变化,之前dav_svn.authz里面的东西被改写了,至此,你可以使用该用户名密码访问 http://localhost/svnroot 和 http://localhost/svnmanager 了。

安装artifactory对jar包进行管理:
在安装artifactory之前需要先装jdk,版本要大于1.5
先去下载artifactory包,解压开来后选择一个目录存放,如/home/username/目录下。
下载地址:http://www.jfrog.org/download.php
进入artifactory-2.3.4.1 目录
cd /home/username/artifactory-2.3.4.1/bin
对install.sh 文件更改权限:
sudo chmod 777 install.sh ,然后
sudo ./install.sh    即可完成Articfactory安装,简单吧。默认安装是采用jetty。
编辑/home/username/artifactory-2.3.4.1/etc/default文件
gedit /home/username/artifactory-2.3.4.1/etc/default
增加JAVA_HOME环境变量 下面第三行.如果正确就不用改。
export JAVA_HOME=/home/meisei/jdk1.6.0_24
export JAVA_OPTIONS="-server -Xms1g -Xmx1g -Xss256k -XX:PermSize=128m -XX:MaxPermSize=128m -XX:NewSize=384m -XX:MaxNewSize=384m"
export ARTIFACTORY_HOME=/home/meisei/artifactory-2.3.4.1
export ARTIFACTORY_USER=artifactory
启动artifactory:
sudo /home/username/artifactory-2.3.4.1/bin/artifactoryctl start
再启动apache2:
sudo /etc/init.d/apache2 restart
然后在浏览器中输入http://localhost:8081/articfactory,默认用户名和密码为admin、password。

开机启动apache,mysql,artifactory:
从上可以看出apache2 mysql等的启动都需要在/etc/init.d/下执行,故可以对该目录下相应的软件进行链接,链接到某个开机执行文件中,如/etc/rc5.d/下,命令如下:
sudo ln -s /etc/init.d/apache2 /etc/rc5.d/
sudo ln -s /etc/init.d/mysql /etc/rc5.d/
sudo ln -s /etc/init.d/artifactory /etc/rc5.d/
 这样当机器开机后就会自动启动apache2 ,mysql,artifactory了。
 

抱歉!评论已关闭.