gists/pure-ftpdPure-FTPd Docker镜像是基于Pure-FTPd构建的容器化解决方案,Pure-FTPd是一款免费(BSD许可)、安全、生产级质量且符合标准的FTP服务器。该镜像提供了便捷的部署方式,适用于需要快速搭建可靠FTP服务的场景。
该镜像使用以下数据卷实现数据持久化:
| 数据卷路径 | 说明 |
|---|---|
/home/ftpuser | FTP用户的数据存储目录 |
/etc/pureftpd | Pure-FTPd的配置文件目录 |
支持通过以下环境变量自定义服务行为:
| 环境变量 | 默认值 | 说明 |
|---|---|---|
PUBLIC_HOST | localhost | 用于PASV模式支持的IP/主机名设置 |
MIN_PASV_PORT | 30000 | PASV模式最小端口号 |
MAX_PASV_PORT | 30009 | PASV模式最大端口号 |
UID | 1000 | FTP系统用户(ftpuser)的用户ID |
GID | 1000 | FTP系统用户组(ftpgroup)的组ID |
通过以下命令快速启动Pure-FTPd容器:
bashdocker run \ -d \ --name pure-ftpd \ -p 21:21 \ -p 30000-30009:30000-30009 \ -v $(pwd)/pureftpd:/etc/pureftpd \ -v /your/data:/home/ftpuser \ gists/pure-ftpd
注意:自Docker 1.5版本起,支持端口范围导出。
-d:后台运行容器--name pure-ftpd:指定容器名称为pure-ftpd-p 21:21:映射FTP控制端口-p 30000-30009:30000-30009:映射PASV模式端口范围-v $(pwd)/pureftpd:/etc/pureftpd:挂载本地目录到容器配置目录,持久化配置文件-v /your/data:/home/ftpuser:挂载本地数据目录到容器FTP用户数据目录使用docker-compose.yml配置文件部署:
yamlpure-ftpd: image: gists/pure-ftpd container_name: pure-ftpd ports: - "21:21" - "30000-30009:30000-30009" volumes: - /your/data:/home/ftpuser # 本地数据目录挂载 - ./pureftpd:/etc/pureftpd # 本地配置目录挂载 restart: always # 容器退出时自动重启
为确保FTP用户能正常访问数据目录,需设置/home/ftpuser目录的权限:
bashdocker exec -it pure-ftpd chown ftpuser:ftpgroup -R /home/ftpuser
Pure-FTPd使用虚拟用户进行FTP登录,需通过pure-pw命令创建:
bash# ftpuser为系统用户,test为创建的FTP虚拟用户 docker exec -it pure-ftpd pure-pw useradd test -m -u ftpuser -d /home/ftpuser/test
-m:自动生成用户数据库文件-u ftpuser:关联虚拟用户到系统用户ftpuser-d /home/ftpuser/test:指定虚拟用户的主目录创建虚拟用户后,需刷新密码文件才能使新用户生效:
bashdocker exec -it pure-ftpd pure-pw mkdb
Pure-FTPd可通过以下核心参数配置服务(镜像默认已包含常用配置):
| 参数 | 说明 |
|---|---|
| `-C | --maxclientsperip |
| `-l | --login puredb:/etc/pureftpd.pdb` |
| `-E | --noanonymous` |
| `-j | --createhomedir` |
| `-R | --nochmod` |
-P <IP/Host> | 设置PASV模式支持的IP/主机名(对应PUBLIC_HOST环境变量) |
-p <min>:<max> | 设置PASV模式端口范围(对应MIN_PASV_PORT和MAX_PASV_PORT环境变量) |
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像服务
在 Docker Desktop 配置镜像
Docker Compose 项目配置
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
MacOS OrbStack 容器配置
在宝塔面板一键配置镜像
Synology 群晖 NAS 配置
飞牛 fnOS 系统配置镜像
极空间 NAS 系统配置服务
爱快 iKuai 路由系统配置
绿联 NAS 系统配置镜像
QNAP 威联通 NAS 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
来自真实用户的反馈,见证轩辕镜像的优质服务