docker环境安装
1. Docker 官方一键安装脚本:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
2. 验证安装:
docker version
docker compose version
反代配置
1. 为域名添加A或AAAA记录
2.一键配置Caddyfile
cat > Caddyfile <<EOF
# Komari面板的反向代理配置
km.hxjx.hidns.co {
reverse_proxy komari:25774
}
# 哪吒面板的反向代理配置
nz.hxjx.hidns.co {
reverse_proxy nezha:8008
}
# Openlist的反向代理配置
openlist.hxjx.hidns.co {
reverse_proxy openlist:5244
}
# Typecho博客的反向代理配置
blog.aibomart.com {
reverse_proxy typecho:80
}
EOF
安装与配置
1. 一键生成docker-compose.yml
cat > docker-compose.yml <<EOF
services:
caddy:
image: caddy:latest
container_name: caddy
ports:
- "80:80"
- "443:443"
- "443:443/udp"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- ./caddy_data:/data
restart: unless-stopped
nezha:
image: ghcr.io/nezhahq/nezha:latest
container_name: nezha
ports:
- "8008:8008"
volumes:
- ./nezha_data:/dashboard/data
restart: unless-stopped
openlist:
image: openlistteam/openlist:latest
container_name: openlist
user: '0:0'
ports:
- "5244:5244"
environment:
- TZ=Asia/Shanghai
- UMASK=022
- OPENLIST_ADMIN_PASSWORD=xxsky1127 # 请务必修改
volumes:
- ./oplist_data:/opt/openlist/data
restart: unless-stopped
komari:
image: ghcr.io/komari-monitor/komari:latest
container_name: komari
ports:
- "25774:25774"
environment:
- TZ=Asia/Shanghai
- ADMIN_USERNAME=admin
- ADMIN_PASSWORD=xxsky1127
volumes:
- ./komari_data:/app/data
restart: unless-stopped
# Typecho 博客服务
typecho:
image: joyqi/typecho:nightly-php8.2-apache # 官方 Apache 镜像
container_name: typecho
ports:
- "8383:80" # 宿主机 8080 -> 容器 80
environment:
TZ: Asia/Shanghai # 设置时区为上海
volumes:
- ./typecho/app/usr:/app/usr # 当前目录存放 Typecho 文件
depends_on:
- db # 依赖数据库
restart: always # 自动重启策略
# 数据库服务
db:
image: mariadb:10.6 # MariaDB 镜像
container_name: typecho-db
environment:
MYSQL_ROOT_PASSWORD: xxsky1127 # 数据库 root 密码(请修改)
MYSQL_DATABASE: typecho # 默认数据库
MYSQL_USER: typecho # 数据库用户
MYSQL_PASSWORD: xxsky1127 # 用户密码(请修改)
TZ: Asia/Shanghai # 时区
volumes:
- ./db:/var/lib/mysql # 数据库数据存放当前目录
restart: always
networks:
default:
name: app_network
EOF
2. 启动服务
docker compose up -d
3. 停止服务
docker compose down
4. 设置./oplist_data文件夹的权限,确保 Openlist 容器可以正常读写
sudo chown -R 1001:1001 ./oplist_data
5. 启动服务
docker compose up -d
6. 查看服务
docker compose ps
其它操作
1. 查看日志
docker compose logs komari # 查看komari,其它相应的服务名
2. 停止服务
docker compose stop komari # 停止komari,其它相应的服务名
3. 删除数据
sudo rm -rf ./komari_data # 删除komari数据,其它相应的数据名
4. 重启服务
docker compose up -d komari # 重启komari,其它相应的服务名