切换主题
兰空图床安装与配置指南
本指南适用于在 lidong Debian 服务器上使用 Docker 安装兰空图床,并通过宿主机上的 Nginx 提供反向代理。全文按环境检查、容器部署、代理配置与初始化设置五个阶段组织。
准备工作
需要的环境:
- Debian 系统(确保你能正确使用
SSH / VNC登入) - Docker 已安装
- Nginx 已安装在宿主机
- 准备一个已经完成好 DNS 解析的域名 (例如:
img.domain.com)
确认 Docker 是否正常:
bash
# 在终端输入以下命令
docker version
# 如果显示版本号,说明Docker已安装未安装的话,可参考以下命令快速安装
Docker 安装
- 更新系统包列表
bash
sudo apt update
sudo apt upgrade -y- 安装必要的依赖
bash
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release- 添加 Docker 官方 GPG 密钥
bash
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg- 添加 Docker 仓库
bash
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null- 安装 Docker Engine
bash
sudo apt install -y docker-ce docker-ce-cli containerd.io- 验证
bash
docker version确认 Nginx 是否正常:
bash
# 在终端输入以下命令
nginx -v
# 如果显示版本号,说明Nginx已安装如未安装,可参阅 Nginx 安装指南。
第一步:创建项目目录
以下示例将 Docker 数据放在独立数据盘,避免持续占用系统盘。请按实际挂载路径调整命令。
先查看挂载目录
bash
df -h
可以看到数据盘是在 /home 路径
创建项目目录
bash
# 创建项目目录
mkdir -p /home/Docker/lsky-pro
cd /home/Docker/lsky-pro
# 创建数据目录
mkdir -p ./mysql # MySQL数据存储
mkdir -p ./lsky # Lsky数据存储第二步:创建 Docker Compose 配置文件
bash
# 在项目目录中创建Docker-compose.yml文件
nano Docker-compose.yml复制以下内容到编辑器中:
yaml
version: "3"
services:
mysql:
image: mysql:8.0
container_name: lsky_mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: mysql_password # 请修改为强密码
MYSQL_DATABASE: lsky # 数据库名称
MYSQL_USER: lsky # 数据库用户名
MYSQL_PASSWORD: lsky_password # 请修改为强密码
volumes:
- ./mysql:/var/lib/mysql
networks:
- lsky_network
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p$$MYSQL_ROOT_PASSWORD"]
interval: 5s
timeout: 5s
retries: 5
lsky:
image: halcyonazure/lsky-pro-Docker:latest
container_name: lskypro
restart: always
ports:
- "127.0.0.1:8089:8089" # 只监听本地接口,增加安全性
volumes:
- ./lsky:/var/www/html/storage
depends_on:
mysql:
condition: service_healthy
networks:
- lsky_network
networks:
lsky_network:
driver: bridge重要提示
请将示例中的 mysql_password 和 lsky_password修改为你自己的强密码
按 Ctrl+O 保存文件,然后按 Enter 确认,最后按 Ctrl+X 退出编辑器。
第三步:启动服务
bash
# 在/home/Docker/lsky-pro目录中运行
cd /home/Docker/lsky-pro
Docker compose up -d这条命令会启动 MySQL 和兰空图床两个容器,-d 表示在后台运行。
检查服务是否正常运行:
bash
Docker ps
你应该看到两个容器都处于 Up 状态,说明启动成功。
第四步:配置 Nginx 反向代理
bash
# 创建Nginx配置文件
nano /etc/nginx/conf.d/lsky.conf复制以下内容到编辑器中(包含注释):
bash
server {
listen 80; # 监听80端口
server_name img.example.com; # [修改] 将这里改为你的域名
# 日志文件位置
access_log /var/log/nginx/lsky.access.log;
error_log /var/log/nginx/lsky.error.log;
location / {
proxy_pass http://127.0.0.1:8089; # 转发请求到兰空图床服务
# 设置HTTP请求头
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;
# 上传文件大小限制和超时设置
client_max_body_size 100m; # 允许上传的最大文件大小
proxy_connect_timeout 120; # 连接超时时间
proxy_send_timeout 120; # 发送超时时间
proxy_read_timeout 120; # 读取超时时间
}
}重要提示
请将 img.example.com替换为你自己的域名
按 Ctrl+O 保存文件,然后按 Enter 确认,最后按 Ctrl+X 退出编辑器。 然后重新加载 Nginx 配置:
bash
# 检查Nginx配置是否有错误
nginx -t
# 重新加载Nginx配置
nginx -s reload第五步:完成兰空图床初始设置
1. 打开浏览器,访问你的域名
例如:https://img.example.com(替换为自己的域名)。配置正确时将进入兰空图床安装程序,点击“下一步”继续。
2. 数据库配置 & 管理员配置页面
填写以下信息:
| 配置项 | 填写内容 | 注意事项 |
|---|---|---|
| 数据库地址 | lsky_mysql | 这里填写容器名称,不要填写 127.0.0.1 |
| 数据库端口 | 3306 | 保持默认 |
| 数据库名称 | lsky | 与Docker-compose.yml中设置一致 |
| 数据库用户名 | lsky | 与Docker-compose.yml中设置一致 |
| 数据库用户密码 | lsky_password | 与Docker-compose.yml中设置一致 |
注意
- 数据库地址必须填写
lsky_mysql(容器名称),而不是 localhost 或 127.0.0.1 - 确保密码与 Docker-compose.yml 中设置的一致
点击【立即安装】,等待安装完成。
3. 安装完成
安装成功后,系统会自动跳转到登录页面。使用刚才设置的管理员账号和密码登录系统。
恭喜你
现在你已经成功安装了兰空图床!你可以开始使用它来管理和分享你的图片了。
但仍然有一些安全策略需要进行,如为你的网站添加 https ,控制并发请求数,设置合理的访问控制和防火墙策略等。另外还有一些兰空图床的具体玩法,如设置用户组,设置不同的存储策略( e.g oss 存储,sftp ),邮件配置等等,这里也都不逐一展开了。
祝你玩的愉快, Have Fun!
常见问题解决
安装过程中断或出错
如果安装过程中断或出错,可以重置数据库后重新开始:
bash
# 停止所有服务
cd /home/Docker/lsky-pro
Docker compose down
# 删除MySQL数据目录 再重新创建
rm -rf ./mysql && mkdir ./mysql
# 重新启动服务
Docker compose up -d然后重新访问你的域名,再次进行安装。
上传图片失败
如果上传图片失败,可能是权限问题,执行:
bash
# 修复上传目录权限
Docker exec -it lsky-pro chown -R www-data:www-data /var/www/html/storage/app/uploads