如何用 Docker 一步到位快速部署 FileCodeBox 文件分享
【免费下载链接】FileCodeBox文件快递柜-匿名口令分享文本,文件,像拿快递一样取文件(FileCodeBox - File Express Cabinet - Anonymous Passcode Sharing Text, Files, Like Taking Express Delivery for Files)项目地址: https://gitcode.com/GitHub_Trending/fi/FileCodeBox
你只需在一台 Linux 服务器上敲一条docker run命令,就能拉起自己的 FileCodeBox 文件分享柜:上传文件或文本,拿到口令,对方输口令即可取件——像拿快递一样,无需注册。
📋 启动前要核对的几项前置条件
开容器之前,把这张表过一遍,每项几秒就能确认:
| 项目 | 要求 |
|---|---|
| 系统 | Linux,已安装 Docker 引擎 |
| 内存 | 1GB以上比较宽裕 |
| 端口 | 宿主机12345未被占用 |
| 数据目录 | 提前建好可写目录,如/opt/FileCodeBox |
权限先不用纠结,后面容器真抱怨了,一行命令就能解决。
🚀 一条 docker run 跑通 FileCodeBox
清单过完,就两小步:建目录、跑命令。
先建好数据目录并给上写权限:
mkdir -p /opt/FileCodeBox && chmod 755 /opt/FileCodeBox然后是全程唯一一条部署命令,挂上数据、开端口、后台启动:
docker run -d --restart=always -p 12345:12345 \ -v /opt/FileCodeBox:/app/data --name filecodebox \ lanol/filecodebox:2.7.1成功后docker ps里应该能看到一个 Up 状态的容器。用浏览器打开http://你的服务器IP:12345,就能看到分享页面:
命令里的六个参数,各有各的活:
| 参数 | 作用 | 能否省略 |
|---|---|---|
-d | 容器后台运行 | 能,留着调试前台 |
--restart=always | 崩溃或宿主机重启后自动拉起 | 建议保留 |
-p 12345:12345 | 容器端口映射到宿主机 | 不能,外网访问靠它 |
-v /opt/FileCodeBox:/app/data | 把宿主机目录绑进容器 | 不能,生产必须有 |
--name filecodebox | 起个名字方便后续管理 | 可选 |
lanol/filecodebox:2.7.1 | 镜像与固定版本号 | 不能 |
想在前台看启动日志的话,把-d去掉,终端会直接滚动输出。首次初始化的详细步骤可以翻 快速开始文档。
💾 数据落在哪里,端口怎么改
命令跑通之后,先别急着关终端——搞懂两件事:文件存在哪,端口冲突了怎么换。
默认端口。所有数据都在容器的/app/data里,靠上面那条-v绑定到了宿主机的/opt/FileCodeBox。删容器、重建容器,数据都留在宿主机目录里,迁移时拷走这个目录就行。
换个端口。如果12345被别的业务占了,只改左边宿主机一侧的数字,比如换成8080:
-p 8080:12345左边的8080是宿主机侧,右边12345是容器内、写死在镜像里,保持不动。用 Docker Compose 管理的话,官方 compose 文件走的是命名卷fcb-data,效果相同,存储配置文档 里有现成写法。
🔒 生产环境加固三步:限额、反代、HTTPS
自己玩玩,裸跑没问题;准备对外提供服务,就按这个顺序把三层加上,每层一行命令的事。
先给 CPU 和内存上闸。在docker run里补两个参数--memory=512m --cpus=1,单容器再忙也不会拖垮整台宿主机。
再把 Nginx 顶在前面。源站不再直接暴露,配置就几行:
server { listen 80; location / { proxy_pass http://127.0.0.1:12345; } }反代生效后记得给启动命令加上-e FORWARDED_ALLOW_IPS=10.0.0.0/8(换成你代理网段的 CIDR),应用才会信任经过代理的真实客户端 IP。
最后挂上 HTTPS。Debian、Ubuntu 上用 certbot 一条命令搞定证书:
certbot --nginx -d share.example.com签发完成后,域名就能用 https 直接访问了。限流、会话与访问保护的更多细节,见 安全设置文档。
🩺 端口冲突、权限不足、容器未启动怎么定位
部署完出的毛病,大多绕不开这三类,对号入座就行:
| 现象 | 可能原因 | 一行修复命令 |
|---|---|---|
| 页面打不开 | 12345被别的进程占了 | netstat -tulnp \| grep 12345找出占用者再换端口 |
| 上传报错、数据不落地 | 挂载目录没有写权限 | chown -R 1000:1000 /opt/FileCodeBox |
| 容器没起来或反复重启 | 启动阶段就崩了 | docker logs filecodebox看报错 |
每一条跑一遍就定位到了,不用翻长日志。
🗓️ 运维节奏:每次启动、每周、版本更新时
运维不是重活,讲究的是节奏。
每次启动后,花五秒钟看一眼状态:
docker ps | grep filecodebox状态是 Up 就不用管了。容器健康时打开管理面板,看到的就是这个仪表盘:
每周备份一次数据目录,它就是一堆普通文件,一个tar的事:
tar -czvf fcb_backup_$(date +%F).tar.gz /opt/FileCodeBox压缩包拷到另一台机器上存一份,比留在同一块盘上更稳。过期分享内容系统会自动清理,不用你动手。
版本更新时,先拉新镜像、再退掉旧容器:
docker pull lanol/filecodebox:2.8.0 docker stop filecodebox && docker rm filecodebox然后用新版本号重跑原来那条docker run命令,数据卷原样接着用。
跑稳之后,可以接上 Nginx 反代加 HTTPS 对外服务。
【免费下载链接】FileCodeBox文件快递柜-匿名口令分享文本,文件,像拿快递一样取文件(FileCodeBox - File Express Cabinet - Anonymous Passcode Sharing Text, Files, Like Taking Express Delivery for Files)项目地址: https://gitcode.com/GitHub_Trending/fi/FileCodeBox
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考