---
# System prepended metadata

title: 20220927 - 20221003
tags: [GF Work]

---

###### 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並整理。