###### tags: `GF Work` # 20220927 - 20221003 ## 0927(二) ### 工作事項: 1.在本地端架起服務 你需要.... Step1. 下載Intellij (JAVA IDE)、Docker Compose(建立本地端環境)、JAVA SDK(使用jdk-8u221) Step2. 創建一個資料夾,將Docker-Compose.yml放進去,開啟cmd,執行docker-compose up -d Stpe3. 打開Intellij 並開啟ld-server-master專案, 點開gloobal-backend/src/main/java/BackendApplication 依照圖片點下run ![](https://i.imgur.com/3RXRtTz.png) Step4.此時若出現報錯,要透過Maven來install ![](https://i.imgur.com/U6JF3E1.png) 之後再執行一次Step3就可以了 Step5. 進入Swagger確認,若有跳出頁面,代表成功啟用服務 localhost:8099/api/doc.html ### 雷點 a. 若 Intellij 不小心設定到較高版本的SDK,要把路徑設回來 - 對ld-server-master右鍵->open Module Setting/Project 將SDK改回1.8 - 本機->內容->環境變數->系統變數JAVA_HOME 值C:\Program Files\Java\jdk1.8.0_221 b. 若發現docker-compose 有服務一直restarting啟不來,代表拿錯檔案了,要拿新的做些更改 * 之後將原本的docker down,指令 docker-compose down -v,再重新 up ### 分享連結: #### 整理DOCKER使用方式 - 查看目前image docker images - 刪除image docker rmi [options] image [image…] - 查看目前container doocker ps / docker ps -a - 停止 docker stop [options] container [container…] - 刪除container docker rm [options] container [container…] - 進入container docker exec [options] container command [ARG…] docker exec -it <container ID> bash - 查看container詳細資料 docker inspect [options] name|ID [NAME|ID] ### Compose—定義和執行多container管理的工具 相關指令: docker-compose ps \ docker-compose ps -q docker-compose start docker-compose restart docker-compose stop docker-compose up docker-compose down docker-compose logs, web logs ### 管理介面Kitematic 與 Portainer (可供參考 Portainer: docker volume create portainer_data docker run --name=portainer -d -p 9000:9000 -v(…) 若出現Failure:Unable to create administrator user restart Docker + 上面兩個指令重新輸入 ### Dokcer Registry & Dockerhub 將自己的image push至dockerhub 或 Registry docker login docker run -it busybox echo ‘text’ > data.txt docker commit -m “test” <container ID> UserID docker images docker push ## 0928(三) ### 工作事項: APP起來後,將DB資料倒入本地資料庫 intellij IDE明明在同一個包裡的類,引用出現錯誤時,可以嘗試清除cache (import有一堆紅色毛毛蟲) File -> Invalidate cache -> invalidate & restart ![](https://i.imgur.com/ymkvJy4.png) 將dump文件匯入資料庫時可能出現error,需要加大pakcet size 進到Docker裡面->開啟db cli mysql -u root -p //進入mysql show variables like 'max%'; //查看當前sql設定的packetSize set global max_allowed_packet = 100*1024*1024; // 加大允許的packet至100MB mysql - 1114 (HY000): The table is full 進到Docker裡面->開啟db cli df -h //可看當前磁碟使用情況 sql那欄如果滿載,代表docker mysql環境可能設定出錯 若出現此現象應該是吃到docker-compose的設定 ![](https://i.imgur.com/R8JOQmT.png) 將volumes欄註解並重新up dockercompose能解決 開啟Docker時磁碟一直100% 然後掛掉,可以嘗試調整Docker的setting,降低電腦負擔 ![](https://i.imgur.com/e56BUv2.png) ### 分享連結: import 出現問題 https://blog.51cto.com/u_14122613/4780241 mysql - 1114 (HY000): The table is full https://stackoverflow.com/questions/730579/1114-hy000-the-table-is-full 擴大packet size https://blog.xuite.net/tolarku/blog/385615135-MySQL+%E9%8C%AF%E8%AA%A4+got+a+packet+bigger+than+%27max_allowed_packet%27+bytes+mysql ## 0929(四) ### 工作事項: 試著App連線到遠端 DB,需修改properties。 進入global-backend/src/main/resources/application-local.properties ![](https://i.imgur.com/6DnG27Y.png) 將localhost改掉,改成要連線的位址 192.168.0.130 ### 雷點 但是 dubbo 這邊的 localhost不能改,因為他是抓本地端的檔案,透過 20883 port 運行 java 找 common 的引用,如果也改成 192.168.0.130 會出現無法找到 @AutoWired 的 annotation錯誤 ![](https://i.imgur.com/jbVCxss.png) 每個服務的application-local.properties是分開的,所以每啟一個服務前都要修改一次local properties ### 分享連結: Java讀取properties檔案連線資料庫 https://www.796t.com/content/1544360069.html ## 0930(五) ### 工作事項: 1.將 Intellij 綁 git VCS/Get from version control ![](https://i.imgur.com/ZbtuOGD.png) 將URL複製上之後gitlab帳號即可 ![](https://i.imgur.com/TnOJInE.png) 完成之後 IDE 視窗上下的 tool bar 都會有 git 的標籤,可以直接在IDE的上做版控 2.因如果要改 local 連線的設定檔,要改的properties很多,想辦法能否用較小幅度的更動 #### Idea 1: 建一個新的properties(ex: application-remoteID-properties) *優點: 之後人員操作較為直覺* *缺點: 連帶要改到其他的properties 跟xml檔案 (ex:application.properties、lognack-spring.xml) 整體更動時間較長* 舉例: 每個服務需新增application-gfong.properties(內容和local一樣改掉localhost部分即可) 要改的檔案application.properties ![](https://i.imgur.com/9pZQtyJ.png) ![](https://i.imgur.com/IvYhWN8.png) logback-apring.xml ![](https://i.imgur.com/YVopCZJ.png) #### Idea 2: 直接在local properties 將localhost改為要連線的storage位址 (原做法) *優點: 改動幅度較小,只需針對每個App的 local-properties做更改即可* *缺點: 較不直觀* 目前兩種方法皆可正常運行,之後討論再看看使用哪種方式做修改 ### 分享連結: GUI -> MongoDB compass 若版本太高會連不上 https://stackoverflow.com/questions/70590124/server-at-10-70-152-2627017-reports-maximum-wire-version-4-but-this-version-of GUI -> PrettyZoo https://github.com/vran-dev/PrettyZoo/releases ## 10/3(一) ### 工作事項: 研究每個啟動的 Application 做什麼服務,以下連結。 ### 分享連結: 第14頁開始 https://docs.google.com/presentation/d/1UBR65XKHve50XB5d5J4kV09FFVT6Ob3M_6mDLUWz4u0/edit#slide=id.g15fe78fc73a_1_9 ### 本周預計: john的excel,按相仿的方式來打API並整理。