系統

系統

在 Ubuntu 新增對時主機

更改原本設定檔的檔名

cd /etc/chrony/sources.d

sudo mv ubuntu-ntp-pools.sources ubuntu-ntp-pools.sources.BAK

新增一個 .sources 檔,比如:my.sources,內容如下:

server time.stdtime.gov.tw iburst
server tick.stdtime.gov.tw iburst
server tock.stdtime.gov.tw iburst
server watch.stdtime.gov.tw iburst
server clock.stdtime.gov.tw iburst

存檔後,重新啟動服務

sudo systemctl restart chrony

系統

Service Delay

我的 Node.js app 是用 PM2 啟動,MySQL 是放在 Docker。

因為 PM2 啟動 app 比 Docker 快,所以會出現錯誤訊息(資料庫連線錯誤)。

請 ChatGPT 幫忙,延後 PM2 啟動執行 app,方法如下:

先建一個 timer 檔案: /etc/systemd/system/myservice-delay.timer

內容:

[Unit]
Description=Delay start for myservice

[Timer]
OnBootSec=60s
Unit=myservice.service

[Install]
WantedBy=timers.target

這個 Timer 的意思是:開機後 60 秒,才觸發 myservice.service

啟用 Timer:

sudo systemctl daemon-reload
sudo systemctl enable myservice-delay.timer

但有一個地方要注意,原本用 PM2 產生的 service 要停止開機啟動。

sudo systemctl disable myservice
系統

設定 Nginx 只允許區網連線

location / {
  # First attempt to serve request as file, then
  # as directory, then fall back to displaying a 404.
  #try_files $uri $uri/ =404;

  allow 192.168.0.0/24;
  deny all;

  proxy_pass http://127.0.0.1:3000;
  proxy_set_header Host $host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header X-Forwarded-Proto $scheme;
}
返回頂端