Nginx 發布 Docker 執行日誌的方法

2022-10-09 13:33:09 字數 1054 閱讀 9574

公司這邊想進行容器化負載均衡部署.

指令碼很簡單, 已經實現了, 但是發現我這邊沒有elk也沒有loki

又不太像切入到容器內部進行 獲取日誌資訊.

所以我這邊想了乙個別的招來動態重新整理日誌.

動態獲取容器的日誌目錄

然後將目錄動態替換到 nginx的autoindex的路徑下.

然後重啟一下nginx, 使用新的配置檔案進行載入日誌進行展示.

這邊部署的映象是一直乙個相同的名字. 跟埠號繫結: 所以我這邊優先獲取乙個映象的目錄

命令比較簡單, 主要是json格式的獲取資訊內容.

注意注意的是 一開始獲取出來的是 log的檔案, 通過 dirname 的方式獲取到

檔案具體的目錄進行替換.

cd /opt/nginx/

lsof -i:8080|awk '' |xargs kill -9

1. sed 進行變數替換的時候 建議使用 soft quote, 這樣的話就可以直接識別變數了.

需要注意的是 變數替換時不建議使用 / 進行切分了

建議換用 # 類似的符號進行切分, 因為 目錄裡面帶 / 會導致命令失敗.

可以先定義變數, 可以在 ## 之間 新增`` 反引號包裹的命令來實現.

2. 注意sed -i 會修改當前檔案, 會導致丟失模板, 所以建議從模板檔案修改到其他目錄裡面去.

這樣命令可以重複使用.

3. 監控 埠, 停止 nginx的服務

4. 重啟nginx服務

worker_processes 1;

}}

建議增加 user root;的處理

容器的目錄許可權 nobody可能不好獲取, 貿然修改容器的目錄許可權不太好.

建議在被替換的目錄的末尾新增乙個 / 這樣的話 替換完 dirname 之後就正常可用了.

容器 docker 內執行Nginx

容器內執行nginx其實很簡單,但是一開始還是浪費了我很多時間。這裡寫下來給大家省點時間。1 建立nginx資料夾,放置各種配置及日誌等。mkdir docker nginxdocker 資料夾是我存放所有基礎設施容器的地方。2 建立nginx配置檔案 cd docker nginx vim ngi...

docker 執行容器,安裝Nginx

執行容器 安裝nginx docker search nginx docker pull nginx docker images nginx 執行容器mynginx docker run p 80 80 name mynginx d nginx 檢視埠 netstat antp grep 80 訪問...

Docker學習筆記 2 執行nginx

這裡我們使用網易蜂巢來查詢相應的映象 然後就就執行這個映象 docker run hub.c.163.com library nginx執行後發現結果是一片空白,這是為啥呢?因為這樣執行我們只是在前台進行執行而不是後台,而nginx執行方式最好是在後台執行,所以加上 d這個引數,代表run in b...