- 在 dynatrace 官網下載 easyTravel 的原始碼壓縮檔,假設解壓目錄名為 ~/Downloads/dynatrace-easytravel-src。
- 安裝 Java、Ant。
- 編輯 /etc/hosts,為本機增加一個名稱,例如 osboxes。
- 切換至 ~/Downloads/dynatrace-easytravel-src/Distribution 目錄,執行 ant 命令,將產生 dist 子目錄放置編譯結果。
- 編輯 dist/startDistribution.sh,找到一行「export WEBLAUNCHER=set-this-property」,改為「export WEBLAUNCHER=osboxes」,存檔並執行,即會出現 easyTravel 的網頁管理介面。
- 在管理介面關閉 Mobile 相關的前端,也不要自動產生模擬流量,以節省資源。
- 在管理介面啟動 Production -> Standard 模式,注意資料庫必須正常運作,否則請檢查紀錄並排除問題。
- Credit Card Auth. (C++) 啟動失敗可以忽略,另外兩項在啟動過程中逾時,事實上已在提供服務。若在意的話,停止再啟動應能成功,否則請檢查紀錄並排除問題。
- 透過瀏覽器登入,帳密可用 afrida / afrida,網頁應會回應「Hello Afrida Afwika!」。
星期三, 11月 16, 2016
Building dynatrace easyTravel from Source
星期三, 11月 02, 2016
SonarQube Time Zone
SonarQube 預設使用 UTC,對於不夠國際化的我們是有點不方便。要如何在地化?編輯 sonar.properties,應可找到以下不連續的三行:
[2016/12/15]
其實這個問題應該回歸到作業系統的時區設定才對,當初先這麼做但失敗了,後來細究原因,才發現可能是因為沒有依照這篇舊聞。因為我的 SonarQube 是一個 Docker Container,而底下的作業系統是 Debian,無意間又找到另一種做法,指令如下:
- #sonar.ce.javaAdditionalOpts=
- #sonar.search.javaAdditionalOpts=
- #sonar.web.javaAdditionalOpts=
- sonar.ce.javaAdditionalOpts=-Duser.timezone=Asia/Taipei
- sonar.search.javaAdditionalOpts=-Duser.timezone=Asia/Taipei
- sonar.web.javaAdditionalOpts=-Duser.timezone=Asia/Taipei
[2016/12/15]
其實這個問題應該回歸到作業系統的時區設定才對,當初先這麼做但失敗了,後來細究原因,才發現可能是因為沒有依照這篇舊聞。因為我的 SonarQube 是一個 Docker Container,而底下的作業系統是 Debian,無意間又找到另一種做法,指令如下:
- dpkg-reconfigure tzdata
星期二, 11月 01, 2016
Docker container crash?
我負責的許多 Application Server 逐漸移到 Docker 上,最近常遇到休個週末回來就不行了?原來是這些在 VM 裡的 Docker 為了節能減碳,公司的政策是預設每週會自動停機,當底下的 VM 重啟之後,可以檢查到 Application Server 即使是開著的,埠口是外露的,也都只能在 container 本機存取服務,外界一概連不進去。
如此一定先懷疑防火牆吧?怪的是又沒去改,為何上週可以而本週不行?而且即使是整個防火牆都關了,也只修好一半,由完全失聯到「准進不准出」,像是 Jenkins 連不到外面的 Plugin Update Center,或是 SonarQube 連不到認證的 LDAP Server 等等。
最後找到真正的解法是 Docker Service 必須重啟。
如此一定先懷疑防火牆吧?怪的是又沒去改,為何上週可以而本週不行?而且即使是整個防火牆都關了,也只修好一半,由完全失聯到「准進不准出」,像是 Jenkins 連不到外面的 Plugin Update Center,或是 SonarQube 連不到認證的 LDAP Server 等等。
最後找到真正的解法是 Docker Service 必須重啟。
星期三, 10月 26, 2016
Docker-based SonarQube
首先當然是要把 Docker 裝好,再來照這裡的說明只要一行指令:
搭配 PostgreSQL 似乎更容易些,且效率、評價都好,精簡至四道指令完成:
- docker run -d --name sonarqube1 -p 9000:9000 sonarqube
- docker logs sonarqube1
- docker stop sonarqube1
- docker rm sonarqube1
- docker run -d --name sonarqube2 -p 80:9000 sonarqube
- docker exec -it sonarqube2 sh
- docker run -d --name mysql1 -e MYSQL_ROOT_PASSWORD=changeit mysql
- docker exec -it mysql1 sh
- mysql -u root -pchangeit
- create database sonardb;
- grant all on sonardb.* to sonaruser@'%' identified by 'sonarpass';
- flush privileges;
- exit
- exit
- docker inspect mysql1 | grep IPAddress
- docker run -d --name mysql2 --link mysql1 -e MYSQL_RANDOM_ROOT_PASSWORD=true mysql
- docker exec -it mysql2 sh
- mysql -h <mysql1_IPAddress> -u sonaruser -psonarpass
- show databases;
- exit
- exit
- docker run -d --name sonarqube3 -p 9000:9000 --link mysql1 -e SONARQUBE_JDBC_USERNAME=sonaruser -e SONARQUBE_JDBC_PASSWORD=sonarpass -e "SONARQUBE_JDBC_URL=jdbc:mysql://mysql1/sonardb?useUnicode=true&characterEncoding=utf8" sonarqube
搭配 PostgreSQL 似乎更容易些,且效率、評價都好,精簡至四道指令完成:
- docker run -d --name postgres1 postgres
- docker exec -it postgres1 createuser -U postgres -d -P -s sonar (input sonar / sonar)
- docker exec -it postgres1 createdb -U sonar sonar
- docker run -d --name sonarqube4 -p 9000:9000 --link postgres1 -e SONARQUBE_JDBC_URL=jdbc:postgresql://postgres1/sonar sonarqube
星期二, 10月 25, 2016
Red Hat Startup
CentOS 用這麼久了,原以為系出同門的 Red Hat 應該相去不遠才是,沒想到剛開始就踢到鐵板 - 沒有 yum?這樣是要叫人家怎麼裝東西?
好吧,先去 Red Hat 網站申請個帳號,再下指令:
好吧,先去 Red Hat 網站申請個帳號,再下指令:
- subscription-manager register --username 帳號 --password 密碼 --auto-attach
- ip a
Linux access by non-root
用 root 帳號存取 Linux 是方便也是危險的。試想有人要攻一部主機時,沒有帳號是不能猜密碼的,他首先會猜這上面有什麼帳號?又哪個帳號具有最大的權限,讓攻下之後的效益最大?
通常建議平時的操作都用普通的使用者,只有在需要的時候取 root 權限做事,也就是 sudo。例如要新建一個 user1 帳號(此時還是 root 身分):
通常建議平時的操作都用普通的使用者,只有在需要的時候取 root 權限做事,也就是 sudo。例如要新建一個 user1 帳號(此時還是 root 身分):
- userdel -r user1
- useradd user1
- passwd user1
- ## Allow root to run any commands anywhere
- root ALL=(ALL) ALL
- user1 ALL=(ALL) ALL
- ## Allows people in group wheel to run all commands
- %wheel ALL=(ALL) ALL
- usermod -aG wheel user1
星期二, 10月 11, 2016
Mac + VirtualBox + BlueStack => Crash
最近我 Mac 上的 Line 一直都不安份,常要求訊息加密(Letter Sealing)的身分驗證。由於沒有實體 Smartphone 的關係,一直要開 BlueStack 模擬很麻煩就算了,還會讓稍後再開 VirtualBox 的 Mac 當機!原來這兩個軟體是有些愛恨情仇的。而且 Bluestack 竟然也一年沒更新了,暫時就先關閉訊息加密吧,有空再找時間試試 Genymotion 能否取代掉 Bluestack。
訂閱:
文章 (Atom)
