๐ค LLM Ops ๅฏฆๆฐ:ๅจ Linux ็ฐๅขไฝฟ็จ Docker ้จ็ฝฒ DeepSeek-V3 ็งๆๅๆจกๅ่ API ๆดๅ
ๆๅคงๅ่ช่จๆจกๅ(LLM)「ๆฌๅๅ ง็ถฒ」็้ๆฑ,่ฟไธๅนดๆ้กฏ่ฎๅค:่ณๆไธๅบ้、ๅปถ้ฒๆดไฝ、ๆๆฌๆดๅฏๆง、ๆฒป็ๆดไธ่ด。 ไฝ็ๆญฃ่ฝๅฐๆ,ๆๆฐ้ๅธธไธๆฏ「่ท่ตทไพ」่ๅทฒ,่ๆฏ:ๅฏ็ถญ้、ๅฏ็ฃๆง、ๅฏๆงๆฌ้、ๅฏๆดๅฑ、ๅฏๅๆปพ。
้็ฏไปฅ LLM Ops(LLM Operation) ็่ฆ่ง,็คบ็ฏๅฆไฝๅจ Linux ไธ็จ Docker ไฝ็ฝฒ DeepSeek-V3 ๆจ่ซๆๅ, ้้ vLLM ๆไพ OpenAI-Compatible API,ๅ็จ Nginx ไฝ API Gateway ๅๆฌ้、้ๆต่่ทฏ็ฑ, ๆๅพ่ฃไธ Prometheus/Grafana ็ฃๆง่ systemd ้ๆฉ่ชๅๅๅ,ๅฝขๆไธๅฅๅฏไธ็ท็็งๆๅๆจ่ซๅบๅบง。
๐ ็ฎ้
- ไธ、ๅ ่ซ็พๅฏฆ:DeepSeek-V3 ็้จ็ฝฒ้ๆชป่็ญ็ฅ
- ไบ、็ฎๆจๆถๆง:Docker + vLLM + API Gateway + Observability
- ไธ、้จ็ฝฒๅๆบๅ:GPU、Docker ่ๆจกๅๆชๆก
- ๅ、Docker ้จ็ฝฒ vLLM(OpenAI-Compatible Server)
- ไบ、Nginx API Gateway:TLS、API Key、้ๆต่่ทฏ็ฑ
- ๅ ญ、API ๆดๅ:curl / Python(OpenAI SDK)/ ๆขๆ็ณป็ตฑๆน้
- ไธ、LLM Ops ๅฟ ๅ:็ฃๆง、ๆฅ่ช、ๅฎน้่ฆๅ、็ๆฌๆง็ฎก่ๅๆปพ
- ๅ ซ、ๅธธ่ฆๅ้ก่ๆ้ๆธ ๅฎ
- ๐ฌ ไบๅ็่จ
- ๐ ๅปถไผธ้ฑ่ฎ(็ซๅ ง)
ไธ、ๅ ่ซ็พๅฏฆ:DeepSeek-V3 ็้จ็ฝฒ้ๆชป่็ญ็ฅ
DeepSeek-V3 ๅฑฌๆผๅคงๅ MoE(Mixture-of-Experts)ๆจกๅ,ๅฎไฝๆดๆฅ่ฟ「ๆ่ฆ็ด」ๆจ่ซๆๅ。 ๅ ๆญคๅจ็งๆๅ้จ็ฝฒๅ,ๅปบ่ญฐๅ ๅๅ ฉๅๆฑบ็ญ:
-
็ฎๆจๆฏ「ไธ็ทไพๅ
ง้จๅคไบบไฝฟ็จ」้ๆฏ「PoC/้็ผ้ฉ่ญ」?
PoC ๅฏไปฅ็จ่ผๅฐๆจกๅๆ Distill/้ๅ็ๆฌๅ ๆๆต็จๆ้;ไธ็ทๆๆๅ ฅๆดๅฎๆด็่ณๆบ่ๆฒป็。 -
่ฆๆไพๅชไธ็จฎ API ไป้ข?
ไผๆฅญๅ ง้จๆๅฏฆ็จ็ๆฏ OpenAI-Compatible API,ๅ ็บๆขๆๆ็จ(SDK、ๆกๆถ、RAG)ๆนๅๆๅฐ。
ๆฌๆไปฅ「ไป้ขไธ่ด、็ถญ้ๅฏๆง」็บๆ ธๅฟ:ๅณไฝฟไฝ ๆชๅฟ ไธ้ๅงๅฐฑ็จๆๅคง่ฆๆจก็ๆฌ้, ไน่ฝๅ ๆๆดๅฅ LLM Ops ๅบๅบงๅปบ่ตทไพ,ๅพ็บๅๆฟๆๆจกๅ็ๆฌๆๆดๅฎน GPU。
ไบ、็ฎๆจๆถๆง:Docker + vLLM + API Gateway + Observability
ไธๅๆฏๆฌๆๆจ่ฆ็ๆๅฐๅฏไธ็ทๆถๆง(MVP),ไฟ็ไบๅฏฆๅไธๆๅธธ่ฆ็ๆฒป็้ๆฑ:
Client / App / RAG
|
| HTTPS + API Key / JWT(ๅปบ่ญฐ)
v
[ Nginx API Gateway ]
|
| Proxy to internal service
v
[ vLLM OpenAI-Compatible Server ] -- loads --> DeepSeek-V3 weights (HF/local)
|
+--> /metrics ---> Prometheus ---> Grafana
|
+--> Logs (stdout/stderr) ---> Loki/ELK(้ธ้
)
้ๆจฃๆๅฑค็ๅฅฝ่ๆฏ:ๆจ่ซๅผๆๅฐๆณจๆจ่ซ,ๅฎๅ จ่ๆต้ๆฒป็ไบค็ตฆ Gateway,็ฃๆง่็จฝๆ ธๅฏไปฅ็จ็ซๆผ้ฒ。
ไธ、้จ็ฝฒๅๆบๅ:GPU、Docker ่ๆจกๅๆชๆก
1) ๅบๆฌๆชขๆฅๆธ ๅฎ
- Linux ไธปๆฉ:ๅปบ่ญฐ Ubuntu 22.04/24.04 ๆๅ็ดไผบๆๅจ็็ผ่ก็。
- NVIDIA Driver:็ขบ่ช
nvidia-smiๅฏๆญฃๅธธ้กฏ็คบ GPU。 - Docker / Docker Compose:ๆจ่ซๆๅไปฅๅฎนๅจๅๆนๅผไธ็ท่ๅๆปพ。
- GPU Container Runtime:NVIDIA Container Toolkit(่ฎๅฎนๅจ่ฝไฝฟ็จ GPU)。
- ๅฒๅญ็ฉบ้:ๆจกๅๆฌ้้ๅธธ้ๅธธๅคง,่ซ้ ็่ถณๅค ๅฎน้่ I/O(NVMe ๅชๅ )。
2) ๅปบ่ญฐ็ฎ้่ฆๅ
sudo mkdir -p /opt/llm/models
sudo mkdir -p /opt/llm/deepseek-v3
sudo chown -R $USER:$USER /opt/llm
3) ไธ่ผๆจกๅๆฌ้(ไปฅ Hugging Face ็บไพ)
ๅฏฆๅไธ,ๅปบ่ญฐๆๆจกๅๆฌ้ๅบๅฎๅจไธๅๆชๆก่ทฏๅพ,ไธฆไปฅ「็ๆฌๅ่ณๆๅคพ」็ฎก็,้ฟๅ ๆดๆฐๆ่ฆ่้ ๆๅๆปพๅฐ้ฃ。
# ๅฎ่ฃ HF CLI(่ฅๅทฒๅฎ่ฃๅฏ็ฅ)
python3 -m pip install -U "huggingface_hub[cli]"
# ็ปๅ
ฅ(่ฅๆจกๅ้่ฆๆๆฌๆไฝ ่ฆ็จๅ ้ไธ่ผ)
huggingface-cli login
# ไธ่ผๅฐๆฌๅฐ(็ฏไพ:DeepSeek-V3)
# ๅปบ่ญฐๆฏๆฌกไธ่ผ็ถๅฎ็ๆฌ่ณๆๅคพ,ไพๅฆ:/opt/llm/models/deepseek-v3/2025-11-27/
mkdir -p /opt/llm/models/deepseek-v3/2025-11-27
huggingface-cli download deepseek-ai/DeepSeek-V3 \
--local-dir /opt/llm/models/deepseek-v3/2025-11-27 \
--local-dir-use-symlinks False
ๅ、Docker ้จ็ฝฒ vLLM(OpenAI-Compatible Server)
vLLM ๆไพ OpenAI-Compatible Server,ๅฏ็ดๆฅๅฐๅคๆไพ /v1/models、/v1/chat/completions ็ญ็ซฏ้ป,
่ฎไฝ ๆๆขๆๆ็จ็ๅผๅซๆจกๅผ「่ฝๅๅ
ง็ถฒ」。
ๆนๆก A:docker run(ๆๅฟซ้ฉ่ญ)
# ไปฅ vLLM OpenAI server ็บไพ(ๆ ๅฐ 8000)
# ้่ฆ:่ซไพ GPU ๆธ้่ชฟๆด --tensor-parallel-size
docker run --rm -it \
--gpus all \
-p 8000:8000 \
-v /opt/llm/models:/models \
vllm/vllm-openai:latest \
--model /models/deepseek-v3/2025-11-27 \
--served-model-name deepseek-v3 \
--tensor-parallel-size 1 \
--max-model-len 8192 \
--gpu-memory-utilization 0.90 \
--trust-remote-code \
--disable-log-requests
ๅๅๅพๅ ๅๅฅๅบทๆชขๆฅ:
curl http://127.0.0.1:8000/v1/models
ๆนๆก B:docker compose(ไธ็ทๅปบ่ญฐ)
ๆ่จญๅฎๅบๅฎๅจ compose.yml,ๅฏ้็พ้จ็ฝฒ、ๅฏ่ฟฝ็、ไนๆดๅฎนๆๆฅ systemd。
cat > /opt/llm/deepseek-v3/compose.yml <<'YAML'
services:
deepseek_v3:
image: vllm/vllm-openai:latest
container_name: deepseek-v3
restart: unless-stopped
ports:
- "8000:8000"
volumes:
- /opt/llm/models:/models:ro
environment:
# ่ฅไฝ ็ๆต็จ้่ฆ HF Token,ๅฏ็จ็ฐๅข่ฎๆธๆณจๅ
ฅ(ไนๅฏๆน็จ docker secret)
# - HUGGING_FACE_HUB_TOKEN=xxxx
- TZ=Asia/Taipei
command:
- "--model=/models/deepseek-v3/2025-11-27"
- "--served-model-name=deepseek-v3"
- "--tensor-parallel-size=1"
- "--max-model-len=8192"
- "--gpu-memory-utilization=0.90"
- "--trust-remote-code"
- "--disable-log-requests"
# ้่ฆ Compose v2 + NVIDIA runtime ๆฏๆด
deploy:
resources:
reservations:
devices:
- capabilities: ["gpu"]
YAML
cd /opt/llm/deepseek-v3
docker compose up -d
docker compose logs -f
่ฅไฝ ๆฏๅคๅผต GPU(ไพๅฆ 2/4/8 ๅผต)ๅๅผต้ๅนณ่ก,ๆ ธๅฟๅฐฑๆฏๆ --tensor-parallel-size ่จญ็บๅฐๆ็ GPU ๆธ,
ไธฆ็ขบไฟๅฎนๅจ่ฝ็่ฆ่ถณๅค GPU。่ณๆบไธ่ถณๆ,่ซๅ
้ไฝ --max-model-len、ๆๆก็จๆดๅฐ/้ๅ็ๆฌๆจกๅ。
ไบ、Nginx API Gateway:TLS、API Key、้ๆต่่ทฏ็ฑ
ไธๅปบ่ญฐๆ vLLM ๆๅ(8000)็ดๆฅๆด้ฒๅจๅ ฌ้็ถฒ่ทฏ。ๅฏฆๅไธๆ่ฉฒ: vLLM ๅช่ฝๅ ง็ถฒ,็ฑ Nginx ไฝ API Gateway ็ตฑไธๅๅญๅๆงๅถ่ๆต้ๆฒป็。
1) ๆๅฐๅฏ็จ:Header API Key + ้ๆต
ไปฅไธ็คบ็ฏไปฅ X-API-Key ไฝ็บ็ฐกๆๆๆฌ(ๅ
ง็ถฒ็ฐๅขๅธธ็จ),ไธฆๅ ไธ basic rate limit:
# /etc/nginx/conf.d/llm-gateway.conf
# ๆณจๆ:ๆญค็บ็คบ็ฏ,TLS/ๆ่ญ、WAF、IP allowlist ๅฏไพ้ๆฑๆดๅ
limit_req_zone $binary_remote_addr zone=llm_ratelimit:10m rate=10r/s;
map $http_x_api_key $llm_allowed {
default 0;
"REPLACE_WITH_YOUR_KEY" 1;
}
server {
listen 443 ssl;
server_name llm.internal.example.com;
# ssl_certificate / ssl_certificate_key ่ซ่ช่ก้
็ฝฎ
# ssl_certificate /etc/letsencrypt/live/xxx/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/xxx/privkey.pem;
if ($llm_allowed = 0) { return 401; }
location / {
limit_req zone=llm_ratelimit burst=20 nodelay;
proxy_pass http://127.0.0.1:8000;
proxy_http_version 1.1;
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;
# ้ฟๅ
่ถ
้ทๅๆ่ขซๅๆท(ๅฏ่ฆๆ
ๆณ่ชฟๆด)
proxy_read_timeout 300s;
proxy_send_timeout 300s;
}
# ๅฏๆ metrics ไนๆถ้ฒไพ,ไฝๅปบ่ญฐๅชๅ
่จฑ็ฃๆง็ถฒๆฎต
location /metrics {
allow 10.0.0.0/8;
deny all;
proxy_pass http://127.0.0.1:8000/metrics;
}
}
ๅปบ่ญฐๅพ็บๆผ้ฒๆนๅ:API Key ๆนๆ JWT / OAuth2、ๅ ไธ ็จๆถ/้จ้้ ้ก、ไธฆๅฐ่ซๆฑ่จ้ๅฐๅ ฅ SIEM。
ๅ ญ、API ๆดๅ:curl / Python(OpenAI SDK)/ ๆขๆ็ณป็ตฑๆน้
1) curl:ๅฟซ้้ฉ่ญ Chat Completions
curl https://llm.internal.example.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: REPLACE_WITH_YOUR_KEY" \
-d '{
"model": "deepseek-v3",
"messages": [
{"role": "system", "content": "ไฝ ๆฏๅด่ฌน็ไผๆฅญ IT ๅฉ็。"},
{"role": "user", "content": "่ซ็จๆขๅๆด็:Docker ๅๆจ่ซๆๅไธ็ทๅ่ฆๆชขๆฅๅชไบ้
็ฎ?"}
],
"temperature": 0.2
}'
2) Python:ไฝฟ็จ OpenAI SDK ๆๅๅ ง็ถฒ
python3 -m pip install -U openai
python3 - <<'PY'
from openai import OpenAI
client = OpenAI(
base_url="https://llm.internal.example.com/v1",
api_key="REPLACE_WITH_YOUR_KEY"
)
resp = client.chat.completions.create(
model="deepseek-v3",
messages=[
{"role":"system","content":"ไฝ ๆฏๅด่ฌน็ไผๆฅญ IT ๅฉ็。"},
{"role":"user","content":"่ซ็ตฆๆไธไปฝ LLM Ops ไธ็ทๆชขๆฅๆธ
ๅฎ(ๅซ็ฃๆง、ๆฅ่ช、่ณๅฎ)。"}
],
temperature=0.2
)
print(resp.choices[0].message.content)
PY
3) ๆขๆ็ณป็ตฑๆน้ ๅปบ่ญฐ(ๆๅฐ่ฎๆด)
- ็ตฑไธ่จญๅฎ:ไปฅ็ฐๅข่ฎๆธ็ฎก็
LLM_BASE_URL、LLM_API_KEY,้ฟๅ ๆฃ่ฝๅจ็จๅผ็ขผ。 - ๆจกๅๅ็จฑๆฝ่ฑกๅ:ไธ่ฆๆ็นๅฎๆจกๅๅฏซๆญป;็จ
MODEL_NAMEๅๆธๅฏๅฟซ้ๅๆ็ๆฌ(ๅๆปพๆดๅฎนๆ)。 - ่ถ ๆ่้่ฉฆ็ญ็ฅ:ๆจ่ซๅปถ้ฒๆฌไพๅฐฑ้ซๆผไธ่ฌ API,่ซ่จญๅฎๅ็ timeout、ไธฆไปฅๅช็ญๆนๅผ้่ฉฆ。
- ๆๆ่ณๆ่็:้ฒๅ ฅ LLM ไนๅๅ ๅ้ฎ็ฝฉ(ไพๅฆ Token、ๅธณๅฏ、ๅ่ณ),ไธฆๆ้ฎ็ฝฉ่ฆๅ็ๆฌๅ。
ไธ、LLM Ops ๅฟ ๅ:็ฃๆง、ๆฅ่ช、ๅฎน้่ฆๅ、็ๆฌๆง็ฎก่ๅๆปพ
1) ็ฃๆง:Prometheus / Grafana
vLLM ้ๅธธๆๆไพ /metrics(Prometheus ๆ ผๅผ)ไพๆๅ。ๆๅฐ่จญๅฎๅฆไธ:
# prometheus.yml(็ๆฎต)
scrape_configs:
- job_name: "vllm-deepseek"
metrics_path: /metrics
static_configs:
- targets: ["llm.internal.example.com:443"]
ๅปบ่ญฐ่ณๅฐๅๅๅผตๅ:
- ๅปถ้ฒ:P50/P95/P99(ๅพ Gateway ่ vLLM ๅ็ไธไปฝ)
- ไฝๅ/ไธฆ็ผ:็ญๅพ ไธญ็่ซๆฑๆธ、่็ไธญ็่ซๆฑๆธ
- ๅๅ:tokens/s、requests/s
- ่ณๆบ:GPU utilization、GPU memory、CPU/RAM、็ฃ็ข I/O
2) ๆฅ่ช:ๅฏ็จฝๆ ธไฝไธๆดฉๆผ
- ๆจ่ซ็ซฏ:ๅปบ่ญฐๅจ้ฑ็งๆๆๅ ดๆฏไฝฟ็จ
--disable-log-requests,้ฟๅ ๆ prompt/response ๆๅฐ logs。 - Gateway ็ซฏ:ไฟ็ request id、ไพๆบ、่ๆ、็ๆ ็ขผ;ๅฟ ่ฆๆ่จ้ไฝฟ็จ่ /้จ้่ญๅฅ(้ ้ก่็จฝๆ ธ)。
- ่ณๆไฟ็:่จๅฎ retention(ไพๅฆ 14/30/90 ๅคฉ),้ฟๅ ็ก้ๅถๆ้ท。
3) ๅฎน้่ฆๅ:ๆ「ๅฏๆๅ็ไบบๆธ」้ๅ
LLM ็ๅฎน้่ฆๅ้้ป้ๅธธไธๆฏ CPU,่ๆฏ:GPU ่จๆถ้ซ、KV Cache、ๆๅคงไธไธๆ้ทๅบฆ、ๅๆไฝต็ผๆธ。 ๅฏฆๅๅปบ่ญฐๅๅ ฉๅ้ๅถ:
- ้ๅถ max tokens / max model len:ๅ ไฟ็ฉฉๅฎ,ๅ้ๆญฅๆพๅฏฌ。
- Gateway ้ๆต:้ฟๅ ๅฐๅณฐๆๆจ่ซๆๅๆ็(burst + rate)。
4) ็ๆฌๆง็ฎก่ๅๆปพ:ๆจกๅไนๆฏ「็ผ็็ฉ」
- ๆจกๅ็ๆฌๅ:ไพๅฆ
/opt/llm/models/deepseek-v3/2025-11-27,ไธ่ฆ็จ「latest」่ณๆๅคพ่ฆ่。 - ้
็ฝฎ็ๆฌๅ:
compose.yml、Nginx conf、Prometheus conf ้ฝ่ฆ้ฒ Git。 - ๅๆปพ็ญ็ฅ:ๅบไบๆๅ ๅๆปพๅฐไธไธๅ็ฉฉๅฎๆจกๅ่ทฏๅพ,ๅๆๆฅๆฐ็ๆฌ。
5) ้ๆฉ่ชๅๅๅ:็จ systemd ็ฎกไฝ docker compose
# /etc/systemd/system/deepseek-v3.service
[Unit]
Description=DeepSeek-V3 vLLM (Docker Compose)
After=network-online.target
Wants=network-online.target
[Service]
Type=oneshot
WorkingDirectory=/opt/llm/deepseek-v3
ExecStart=/usr/bin/docker compose up -d
ExecStop=/usr/bin/docker compose down
RemainAfterExit=yes
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target
# ๅ็จ
sudo systemctl daemon-reload
sudo systemctl enable --now deepseek-v3.service
sudo systemctl status deepseek-v3.service
ๅ ซ、ๅธธ่ฆๅ้ก่ๆ้ๆธ ๅฎ
1) ๅฎนๅจ็ไธๅฐ GPU
nvidia-smi
docker run --rm --gpus all nvidia/cuda:12.4.1-base-ubuntu22.04 nvidia-smi
- ่ฅ็ฌฌไบ่กๅคฑๆ:ๅชๅ ๆชขๆฅ NVIDIA Driver ่ NVIDIA Container Toolkit。
2) ๅๅๆๅไฝ่ซๆฑๅพๆ ขๆๅธธ่ถ ๆ
- ๅ
้ไฝ
--max-model-len่ๆฏๆฌก่ซๆฑ็max_tokens。 - ๆชขๆฅ GPU memory ๆฏๅฆ็ๆ(KV Cache ไธ่ถณๆๅฐ่ดไบคๆ/้ๅ)。
- ๆ Gateway ็
proxy_read_timeout่ชฟๅคง,้ฟๅ ๅๆ่ขซๅๆท。
3) /metrics ๆไธๅฐ
- ๅ
็ขบ่ช:
curl http://127.0.0.1:8000/metrics - ่ฅ่ตฐ Nginx:็ขบ่ช allowlist ่ proxy_pass ่ทฏๅพ。
4) ๆจกๅๆดๆฐๅพๅบ็พไธ็ธๅฎนๆ่ก็บๆน่ฎ
- ไปฅๆจกๅ็ๆฌ่ณๆๅคพๅฟซ้ๅๆปพ。
- ไฟ็ไธไปฝ「ๅบๅฎๆธฌ่ฉฆ้」(ๆ็คบ่ฉ + ๆๆ่ผธๅบ้ขจๆ ผ)ๅ smoke test。
๐ฌ ไบๅ็่จ
ไฝ ็ฎๅ็้จ็ฝฒ็ฐๅขๆฏๅฎๆฉ、ๅค GPU,้ๆฏๆบๅ่ตฐ K8s / Ray ็ๅๆฃๅผๆจ่ซ?ไนๆญก่ฟๅไบซไฝ ้ๅฐ็็ถ้ ธ(GPU ่จๆถ้ซ、ๅปถ้ฒ、ไฝต็ผ、ๆฌ้ๆง็ฎก、็ฃๆงๆๆจ)。
- ๆณ็ไธไธ็ฏ:K8s ไธ็ท(HPA/่ชๅๆด็ธฎ/็ฐๅบฆ็ผ็)่ๆจกๅๅๆปพ็ญ็ฅ
- ๆณ็ๅฏฆไฝ:RAG(ๅ้ๅบซ)+ๅ ง็ถฒ OpenAI-Compatible API ็ๆดๅ็ฏๆฌ
- ๆณ็ๆฒป็:้จ้้ ้ก、ๅฏฉ่จๆฅๅฟ、ๆ็คบ่ฉ้ฎ็ฝฉ่่ณๆ้ฒๅคๆดฉ
๐ ๅปถไผธ้ฑ่ฎ(็ซๅ ง)
- ๐ค AI ไธป้กๆด็(็ซๅ ง็ดขๅผ)
- ComfyUI / Stable Diffusion ๅฏฆไฝ(ๅ็บๆฌๅฐๅ AI ๆๅ็็ถญ้ๆ่ทฏ)
- Linux ๆ่ฝ็ฃๆง:top、htop、iotop、nmon
- Linux ๆ ธๅฟๅๆธ่ I/O ่ชฟๆ ก(sysctl)
- Linux Proxy(Squid)ๅปบ็ฝฎ่่จญๅฎ
- Proxmox Backup Server(PBS)ๆทฑๅบฆๅฏฆไฝ:็ฐๅฐๅข้ๅไปฝ่ๅ็ดข้ฒ่ญท
ๆๅพๆดๆฐ:2026-01-02 · ไฝ่ :WWFandy
ๆฒๆ็่จ:
ๅผต่ฒผ็่จ