📖 本文目录
新人专用:兰空图床安装配置手册
看到有人在某坛问兰空图床的问题,意识到虽然有官方文档和社区加持,但可能仍然有一些细节存在坑点,导致安装不成功。最近入了 VPS.Town 的 A2 大盘鸡,刚好要再装一次,便分享一份安装指南,回馈社区。
本指南适用于在 VPS.Town 服务器(Debian 系统) 上使用 Docker 安装兰空图床,并通过宿主机上的 Nginx 进行访问。整个过程分为 5 个简单步骤,即使是没有接触过的新人同学也可以很快上手,轻松完成。
准备工作
需要的环境:
- Debian 系统(确保你能正确使用
SSH / VNC
登入) - Docke 已安装
- Nginx 已安装在宿主机
- 准备一个已经完成好 DNS 解析的域名 (例如:
img.domain.com
)
确认 Docker 是否正常:
# 在终端输入以下命令
Docker version
# 如果显示版本号,说明Docker已安装
未安装的话,可参考以下命令快速安装
Docker 安装
- 更新系统包列表
sudo apt update
sudo apt upgrade -y
- 安装必要的依赖
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
- 添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
- 添加 Docker 仓库
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
sudo apt install -y docker-ce docker-ce-cli containerd.io
- 验证
确认 Nginx 是否正常:
# 在终端输入以下命令
nginx -v
# 如果显示版本号,说明Nginx已安装
如未安装,可 Refer nginx 安装手册
第一步:创建项目目录
如果你没有修改挂载目录的话 ,那么你可以直接照着做就可以。建议把 Docker 数据放数据盘,不占用系统盘容量,当然如果你进行了扩容且够用的话当我没说。
先查看挂载目录
可以看到数据盘是在 /home
路径
然后我们来创建项目目录
# 创建项目目录
mkdir -p /home/Docker/lsky-pro
cd /home/Docker/lsky-pro
# 创建数据目录
mkdir -p ./mysql # MySQL数据存储
mkdir -p ./lsky # Lsky数据存储
第二步:创建 Docker Compose 配置文件
# 在项目目录中创建Docker-compose.yml文件
nano Docker-compose.yml
复制以下内容到编辑器中:
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
退出编辑器。
第三步:启动服务
# 在/home/Docker/lsky-pro目录中运行
cd /home/Docker/lsky-pro
Docker compose up -d
这条命令会启动 MySQL 和兰空图床两个容器,-d
表示在后台运行。
检查服务是否正常运行:
你应该看到两个容器都处于 Up
状态,说明启动成功。
第四步:配置 Nginx 反向代理
# 创建Nginx配置文件
nano /etc/nginx/conf.d/lsky.conf
复制以下内容到编辑器中(包含注释):
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 配置:
# 检查Nginx配置是否有错误
nginx -t
# 重新加载Nginx配置
nginx -s reload
第五步:完成兰空图床初始设置
1. 打开浏览器,访问你的域名
例如:http://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!
常见问题解决
安装过程中断或出错
如果安装过程中断或出错,可以重置数据库后重新开始:
# 停止所有服务
cd /home/Docker/lsky-pro
Docker compose down
# 删除MySQL数据目录 再重新创建
rm -rf ./mysql && mkdir ./mysql
# 重新启动服务
Docker compose up -d
然后重新访问你的域名,再次进行安装。
上传图片失败
如果上传图片失败,可能是权限问题,执行:
# 修复上传目录权限
Docker exec -it lsky-pro chown -R www-data:www-data /var/www/html/storage/app/uploads