CentOS7にknowledgeインストール

CentOS7にTomcat8 + knowledgeのセットアップ
今回はknowledgeをCentOS7にセットアップする。knowledgeにはTomcatが動く環境が必要になるのでこれも一緒にセットアップする。

Java8インストール

curl -LO -H "Cookie: oraclelicense=accept-securebackup-cookie" \
"http://download.oracle.com/otn-pub/java/jdk/8u162-b12/0da788060d494f5095bf8624735fa2f1/jdk-8u162-linux-x64.rpm"

rpm -Uvh jdk-8u162-linux-x64.rpm

vim /etc/profile
下記を追記してパスを通す

export JAVA_HOME=/usr/java/default
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

source /etc/profile

Tomcatのセットアップ

curl -O http://ftp.jaist.ac.jp/pub/apache/tomcat/tomcat-8/v8.5.28/bin/apache-tomcat-8.5.28.tar.gz

tar zxvf apache-tomcat-8.5.28.tar.gz

mv apache-tomcat-8.5.28 /usr/libexec/tomcat8

useradd -M -d /usr/libexec/tomcat8 tomcat

chown -R tomcat. /usr/libexec/tomcat8

vim /usr/lib/systemd/system/tomcat8.service

[Unit]
Description=Apache Tomcat 8
After=network.target

[Service]
Type=oneshot
ExecStart=/usr/libexec/tomcat8/bin/startup.sh
ExecStop=/usr/libexec/tomcat8/bin/shutdown.sh
RemainAfterExit=yes
User=tomcat
Group=tomcat

[Install]
WantedBy=multi-user.target

systemctl start tomcat8

systemctl enable tomcat8

firewalldの設定

Tomcatは8080ポートで動くので8080ポートでアクセスができるようにする。
firewall-cmd --zone=public --add-port=8080/tcp --permanent

firewall-cmd --reload

knowledgeのセットアップ

Tomcatのwebappsフォルダにknowledgeのwarファイルを設置する。
cd /usr/libexec/tomcat8/webapps

wget https://github.com/support-project/knowledge/releases/download/v1.12.0/knowledge.war

Apacheとの連携

Apacheと連携することでドメインに「:8080」を書かなくてもアクセスできるようにする。
vim /etc/httpd/conf.d/proxy-ajp.conf

<Location /knowledge >
  ProxyPass ajp://localhost:8009/knowledge                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
  Order allow,deny
  Allow from all
</Location>

vim /usr/libexec/tomcat8/conf/server.xml
以下のようにコメントアウトする

<!--
<Connector port="8080" protocol="HTTP/1.1"
  connectionTimeout="20000"
  redirectPort="8443" />
-->

最後にApacheとTomcatの再起動

最後にApacheとTomcatを再起動して完了