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

docker佈署Postgresql and PgAdmin

修改 khezen/compose-postgres

如果需要程式php或java可以考慮把postgresql 5432對外或是另外建一個docker link到postgres網路

系統需求

docker >= 17.12.0+
docker-compose

Github

https://github.com/catyku/postgresql-pgadmin

布署方式

git clonse https://github.com/catyku/postgresql-pgadmin
cd postgresql-pgadmin
sudo docker-compose -d up

可以由sudo docker ps -a 看到postgresql 及pgadmin二個container已經在執行中

Read More

建立Centos主機幾個建議

安裝fail2ban

sudo yum install epel-release
sudo yum install fail2ban

編輯設定

sudo nano /etc/fail2ban/jail.local
[sshd]
enabled = true
filter  = sshd
port    = 22
action = %(action_mwl)s
logpath = /var/log/secure
banaction = firewallcmd-ipset

啟動及查看狀態

sudo systemctl start fail2ban
sudo systemctl enable fail2ban
sudo fail2ban-client status
sudo fail2ban-client status sshd

可參考

Read More

Centos 7 Apache加Brotli網頁壓縮技術

Brotli跟GZIP一樣是一種網頁的壓縮技術,可以用來壓縮javascript , css ,html 等,減少流量使用並增加率加載速度。

Brotli比GZIP壓縮效率更好,壓縮速度也比較快,十分建議使用。

# 安裝需要的套件,當套件更新,可能需要重新編譯,否則可能無法啟動apache
yum -y install libtool automake httpd-devel
 
# git clone 最後一次 commit,且連同 子模組 一起 clone 回來
git clone --depth=1 --recursive https://github.com/kjdev/apache-mod-brotli.git
cd apache-mod-brotli
./autogen.sh
./configure
make
# 編譯完成
 
# 安裝
install -p -m 755 -D .libs/mod_brotli.so /etc/httpd/modules/mod_brotli.so

編譯好後再來需要設定,需放在<ifModule mod_deflate.c>前面,如此才可優先使用Brotli。

Read More