くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

Ubuntu14.04でCI環境(Tomcat7+Jenkins+Nexus)を作る その1

  • 自宅サーバにCI環境を作りたいなーと思い、Tomcat7/Jenkins/Nexusを構築したときの備忘録
  • 最終目標は、AndroidのCIと自作ライブラリの管理!!

Tomcat7のインストール

# install tomcat7
$ sudo apt-get install -y tomcat7 tomcat7-doc tomcat7-admin

# setup permission
$ sudo chown -R tomcat7:tomcat7 /var/lib/tomcat7/
$ sudo chown -R tomcat7:tomcat7 /etc/tomcat7/
$ sudo chown -R tomcat7:tomcat7 /usr/share/tomcat7

# restart service
$ sudo service tomcat7 restart
  • permissionの設定で、Jenkinsのインストールはまった。。。
  • インストールしただけでは、Jenkinsがディレクトリが作れず、起動できなくなってしまう。。。

apt-getでインストールした時のディレクトリの場所

  • tar.gzでインストールした場合と違い、apt-getでインストールするとtomcat7に関係するファイルが点在してしまうので、メモ
/var/lib/tomcat7/
インストールディレクトリ。webappsとかconfとかはここ。
/etc/tomcat7
tomcatのconfigのディレクトリ。server.xmlとかtomcat-users.xmlとかがある
/var/lib/tomcat7/webapps
tomcatのwebappsディレクトリ。warとかはここに配置する
/log/tomcat7
tomcatのlogディレクトリ。logファイルはここに配置される

Tomcatユーザの設定

  • tomcatのmanagerとかを利用するためにユーザとロールを追加
  • 初期設定との差分は以下の通り。
--- tomcat-users.xml 変更前
+++ tomcat-users.xml 変更後
@@ -1,36 +1,39 @@
 <?xml version='1.0' encoding='utf-8'?>
(中略)
 <tomcat-users>
(中略)
 <!--
   <role rolename="tomcat"/>
   <role rolename="role1"/>
   <user username="tomcat" password="tomcat" roles="tomcat"/>
   <user username="both" password="tomcat" roles="tomcat,role1"/>
   <user username="role1" password="tomcat" roles="role1"/>
 -->
+  <role rolename="manager-gui"/>
+  <role rolename="admin-gui"/>
+  <user username="admin" password="s3cret" roles="manager-gui,admin-gui"/>
 </tomcat-users>

JenkisとNexusの配置

  • どちらもwarが提供されているので、webapps配下に配置するだけ
$ cd /var/lib/tomcat7/webapps

$ sudo wget http://mirrors.jenkins-ci.org/war/latest/jenkins.war
$ sudo wget http://www.sonatype.org/downloads/nexus-latest.war -O nexus.war

以上!!

参考にしたサイト様