Mariadb Tomcat Docker環境

這是一個docker-compose,整合Mariadb、phpMyAdmin、tomcat的Docker環境

如何執行

  • 安裝docker-ce及docker-compose
  • 進入專案目錄編譯及啟動docker
    sudo docker-compose up -d –build
  • 利用phpMyAdmin回復資料庫(選擇)
  • 建置及編譯成war檔放置tomcat-webapps目錄
  • 瀏覽http://yourip:8080/warFileName

docker的相關資訊

  • mariadb:latest
  • phpmyadmin/phpmyadmin:latest
  • tomcat:8.5.49-jkd8-openjdk

預設資訊

  • tomcat manager 帳號及密碼 admin / mypassword112233
  • mariadb root 預設密碼 myadmin123
  • phpMyAdmin 預設連接埠 8088
  • tomcat 預設連接埠 8080 ;AJP 連接埠 8009
  • tomcat工作目錄是專案 tomcat-webapps
Read More

GitHub Maven專案自動編譯成war檔

https://github.com/catyku/AutoMavenBuild

Github的maven專案(私有)可以直接下載然後編譯成war deploy檔

需要安裝docker-ce

  • 取得及設定github ssh key可以參考以下這篇

https://help.github.com/en/enterprise/2.17/user/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

  • 修改及設定使用者名稱及專案名稱 -> run.sh (記得mvn -P 的build config也要改成相對應的)
  • 產生docker image tag名稱為maven:project ,可自行修改
  sudo docker build -t maven:project .
  • github下載及編譯打包專案
Read More

docker tomcat with manager html

範例來源

修改 FROM tomcat:8.5.49-jdk8-openjdk
加入 tomcat-users.xml 跟 manager的context.xml來取得manager/html存取權限

tomcat-users.xml為登入資訊
context.xml則管理存取ip等資訊

環境

openjdk 1.8
tomcat 8.5

編譯及執行

sudo docker build ./ -t yourname

and run

sudo docker run -d  -p 8080:8080 --name tomcat  catyku/tomcat:8.5-jre8

Read More

使用logrotate分割tomcat catalina.out

每天自動分割catalina.out檔,免得太大變成無法開啟的log檔

sudo nano /etc/logrotate.d/tomcat
#tomcat 可以自己取
/opt/tomcat/logs/catalina.out{
copytruncate
daily
rotate 30
missingok
compress
size 16M
}

設定檔說明:

  • /opt/tomcat/logs/catalina.out log檔位置
  • daily – 每日分割
  • rotate – 最多保留30個文件(30天?)
  • compress – 壓縮文件
  • size – 當catalin.out大於16M時分割文件

手動執行方法

 /usr/sbin/logrotate /etc/logrotate.conf

自行complie mod_jk

apache mod_jk本身並沒有提供binary版本,所以需要自行make及install,最近版本是JK 1.2.46

首先先下載source,選擇linux可用的版本tar.gz

cd /tmp
wget http://ftp.tc.edu.tw/pub/Apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.46-src.tar.gz
tar -zxvf tomcat-connectors-1.2.46-src.tar.gz

安裝編譯必需lib

sudo yum -y install gcc automake autoconf libtool make
sudo yum -y install httpd-devel

編譯及安裝

cd /tmp/tomcat-connectors-1.2.46-src/native
./configure --with-apxs=/usr/bin/apxs
sudo make
sudo make install

可以在/etc/httpd/modules看到剛才編譯好的mod_jk.so