1、WordPress
准备数据库,数据库权限:指定IP 172.17.0.%
docker run -d \
--name my_wordpress \
-p 8085:80 \
-v /www/wwwroot/wordpress_data:/var/www/html \
-e WORDPRESS_DB_HOST=172.17.0.1:3306 \
-e WORDPRESS_DB_NAME=wordpress_db \
-e WORDPRESS_DB_USER=wordpress_user \
-e WORDPRESS_DB_PASSWORD=你的数据库密码 \
--restart always \
wordpress:latest
设置https
解决上传限制:
第一步:在宝塔面板中创建配置文件
- 登录宝塔面板,点击左侧的 “文件”。
- 进入
/www/wwwroot目录(或者任意你觉得方便的目录)。 - 在空白处点击右键或点击上方的 “新建” -> 选择 “新建空白文件”。
- 将文件命名为:
uploads.ini。 - 双击打开这个新建的
uploads.ini文件,将以下优化配置粘贴进去:
# 设置允许上传的最大文件大小(可根据主题大小调整,64M足够绝大多数主题)
upload_max_filesize = 64M
# 设置每次POST表单提交的最大数据量(必须大于或等于 upload_max_filesize)
post_max_size = 64M
# 脚本最大执行时间(防止上传大文件时脚本超时导致失败)
max_execution_time = 300
max_input_time = 300
# 提高单次脚本运行的内存上限,防止主题解压或运行时运行内存不足
memory_limit = 256M
第二步:用终端命令将文件复制进 Docker 容器
打开宝塔面板的终端(SSH),依次执行以下两条命令:
docker cp /www/wwwroot/uploads.ini my_wordpress:/usr/local/etc/php/conf.d/uploads.ini
docker restart my_wordpress
此时应该已经从原先的 2MB/8MB 变成了 64MB。
2、LunaTV
第一步:在宝塔创建项目目录
为了不重蹈覆辙,我们先把“抽屉”准备好。
- 登录宝塔面板,点击左侧的 “文件”。
- 进入
/www/wwwroot目录。 - 新建一个名为
lunatv的文件夹,然后双击进入它。
第二步:编写编排配置文件 (docker-compose.yml)
在 /www/wwwroot/lunatv 目录下,新建一个空白文件,命名为 docker-compose.yml。双击打开它,将以下完整的配置代码粘贴进去并保存:
version: '3.8'
services:
# 极轻量级的 Redis 数据库,用于存储播放进度和收藏
lunatv-redis:
image: redis:alpine
container_name: lunatv-redis
restart: always
volumes:
- /www/wwwroot/lunatv/redis_data:/data # 核心挂载点:防止进度丢失
command: redis-server --appendonly yes
networks:
- lunatv_net
# LunaTV 核心程序
lunatv-core:
image: ghcr.io/moontechlab/lunatv:latest
container_name: lunatv-core
restart: always
ports:
- '8090:3000' # 宿主机端口 8090 (避开你之前 WordPress 的 8085)
environment:
- USERNAME=admin # 【请修改】你的后台登录账号
- PASSWORD=admin_password # 【请修改】你的后台登录密码
- NEXT_PUBLIC_STORAGE_TYPE=redis
- REDIS_URL=redis://lunatv-redis:6379 # 自动连接上面的 redis 容器
depends_on:
- lunatv-redis
networks:
- lunatv_net
networks:
lunatv_net:
driver: bridge
第三步:一键拉起整个集群
有了这个文件,剩下的事情交给 Docker 自动完成。
- 在宝塔面板打开 终端 (SSH)。
- 进入刚才创建的目录:
cd /www/wwwroot/lunatv
docker compose up -d
3、PanSou
第一步:配置文件
宝塔面板的 “文件”,打开 /www/wwwroot/pansou/docker-compose.yml,清空里面的内容,将下面这份全新的配置粘贴进去并保存:
version: '3.8'
services:
pansou-web:
image: ghcr.io/fish2018/pansou-web:latest # 【核心修复】换成了带网页的完整版
container_name: pansou-web
restart: always
ports:
- '8888:80' # 巧妙映射:把容器内部的网页端口(80)接到宿主机的(8888)上
environment:
- DOMAIN=localhost
- PANSOU_PORT=8888
- PANSOU_HOST=127.0.0.1
deploy:
resources:
limits:
memory: 200M # 因为包含前端界面,稍微给它放宽50M内存
第二步:彻底重建并启动
打开宝塔终端(SSH),执行我们熟悉的“重启两部曲”,让 Docker 拉取这个带有前端页面的新镜像:
cd /www/wwwroot/pansou
# 1. 销毁旧的纯API容器
docker compose down
# 2. 拉起新的完整版网页容器
docker compose up -d
4、Draw.io
第一步:创建专属阵地与配置文件
- 登录宝塔终端(SSH),为 Draw.io 创建一个独立的目录:
mkdir -p /www/wwwroot/drawio
cd /www/wwwroot/drawio
2.创建 docker-compose.yml 文件: 在宝塔文件管理器里打开这个目录,新建该文件,并填入以下官方纯净版配置:
version: '3.8'
services:
drawio:
image: jgraph/drawio:latest
container_name: drawio
restart: always
ports:
# 127.0.0.1 物理隔离公网,8088是本地暗号,8080是容器内部Tomcat的端口
- "127.0.0.1:8088:8080"
deploy:
resources:
limits:
# 纯静态服务,给 300M 内存上限绰绰有余
memory: 300M
第二步:拉取并启动服务
在终端中(确保当前路径是 /www/wwwroot/drawio),执行启动命令:
docker compose up -d
(系统会自动拉取镜像并启动,由于没有数据库初始化,这个过程通常几秒钟就能完成且极速进入可用状态。)
第三步:宝塔 Nginx 配置“迎宾大门”
既然你已经轻车熟路了,我们按标准流程给它套上域名的外壳:
- 解析域名:去域名注册商那里,将一个新的子域名(例如
draw.yourdomain.com)解析到你服务器的公网 IP。 - 新建静态站点:在宝塔面板点击 “网站” -> “添加站点”,填入你的子域名,PHP版本选“纯静态”,点击提交。
- 申请 HTTPS 证书:点击新站点的 “设置” -> “SSL” -> Let’s Encrypt,申请证书并务必勾选 “强制 HTTPS”。
- 配置反向代理:
- 在当前设置窗口中点击 “反向代理” -> “添加反向代理”。
- 代理名称:随便填,比如
drawio_proxy。 - 目标 URL:填入
http://127.0.0.1:8088。 - 点击提交保存。
现在,直接在浏览器中访问 https://draw.yourdomain.com,熟悉的 Draw.io 画板界面就会瞬间加载出来!