From 8ccdbcc57ab99ebfca60ad730e2d2f2b18377c10 Mon Sep 17 00:00:00 2001 From: Timmy Date: Thu, 26 Mar 2026 15:30:48 +0800 Subject: [PATCH] Add adminer-deploy skill --- skill.md | 105 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 skill.md diff --git a/skill.md b/skill.md new file mode 100644 index 0000000..6cbcd71 --- /dev/null +++ b/skill.md @@ -0,0 +1,105 @@ +--- +name: adminer-deploy +description: Deploy Adminer (database management tool) using Docker Compose. Use when user wants to set up Adminer for database administration. +tools: Read, Glob, Grep, Bash +--- + +# Adminer Docker 部署 + +使用 Docker Compose 部署 Adminer 資料庫管理工具。 + +## 前置需求 + +- **目標**: 已安裝 Docker 的伺服器 +- **存取**: SSH root 權限 +- **目錄**: 服務部署於 `/opt/docker/adminer/` + +## 部署步驟 + +### Step 1: 建立目錄與配置 + +```bash +ssh root@ bash -c ' +mkdir -p /opt/docker/adminer +cat > /opt/docker/adminer/docker-compose.yml << "EOF" +services: + adminer: + image: adminer:latest + container_name: adminer + restart: always + ports: + - "8080:8080" +EOF +' +``` + +### Step 2: 啟動服務 + +```bash +ssh root@ "cd /opt/docker/adminer && docker compose up -d" +``` + +### Step 3: 驗證部署 + +```bash +ssh root@ "docker ps | grep adminer" +``` + +**預期輸出**: +``` +adminer Up 0.0.0.0:8080->8080/tcp +``` + +## 存取資訊 + +- **網址**: `http://:8080` +- **預設連接埠**: 8080 + +## 常用指令 + +```bash +# 查看狀態 +ssh root@ "cd /opt/docker/adminer && docker compose ps" + +# 查看日誌 +ssh root@ "cd /opt/docker/adminer && docker compose logs" + +# 停止服務 +ssh root@ "cd /opt/docker/adminer && docker compose down" + +# 重啟服務 +ssh root@ "cd /opt/docker/adminer && docker compose restart" + +# 更新映像 +ssh root@ "cd /opt/docker/adminer && docker compose pull && docker compose up -d" +``` + +## 連接資料庫 + +在 Adminer 登入頁面填寫: + +- **系統**: MySQL / PostgreSQL / SQLite 等 +- **伺服器**: 資料庫容器名稱或 IP +- **使用者**: 資料庫使用者名稱 +- **密碼**: 資料庫密碼 +- **資料庫**: 資料庫名稱 + +## 故障排除 + +### 連接不上資料庫 + +確認資料庫容器與 Adminer 在同一個 Docker 網路,或使用容器 IP 位址。 + +```bash +# 查看容器 IP +docker inspect | grep IPAddress +``` + +### 連接埠衝突 + +如果 8080 連接埠被佔用,修改 `docker-compose.yml` 中的連接埠映射: + +```yaml +ports: + - "8081:8080" # 將主機連接埠改為 8081 +```