
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该Docker镜像基于ProFTPd构建,包含Dockerfile及支持脚本,用于创建和管理ProFTPd容器,提供主动FTP服务及用户管理功能。
bashdocker run -d -p 42042:21 --name="proftp_proftp_1" docker.xuanyuan.run/blacklabelops/proftp
FTP服务将在42042端口可用。
该项目可通过命令行、bash脚本或Docker Compose工具使用,推荐使用脚本进行容器管理。
bash$ ./scripts/run.sh
此命令将使用scripts/container.cfg配置运行容器。
bash$ docker-compose up -d
以detached模式运行容器,使用docker-compose.yml配置。
bash$ ./scripts/build.sh
从scratch构建容器,包含所有必要参数。
bashdocker-compose -f docker-compose-dev.yml build
根据docker-compose-dev.yml文件构建容器。
bashdocker build -t="blacklabelops/proftp" .
从scratch构建容器。
容器内包含用户管理相关脚本,可通过以下命令进入容器bash控制台:
bash$ ./scripts/mng.sh
可用符号链接:
所有用户管理脚本需指定用户名(通过-u参数)。示例:
bash$ chpassftpuser -u SomeUserName
quotaftpset还需指定配额值(通过-q参数):
bash$ quotaftpset -u UserWithQuota -q 100
运行任何自定义脚本可查看现有用户:
bash$ removeftpuser Username Status Quota limit Quota used _____________________________________________________________________________________________ ftpuser ENABLED
bash$ addftpuser -u newuser1 Create new user newuser1 RANDOM PASSWD: e1esAcfp ftpasswd: using alternate file: /var/ftp/ftpd.passwd ftpasswd: creating passwd entry for user newuser1 Password: Re-type password: ftpasswd: entry created Don't forget to set up quota to that user! Use command like this quotaftpset -u newuser1 -q QUOTA
bash$ quotaftpset -u newuser2 -q12 $ quotaftpset Username Status Quota limit Quota used _____________________________________________________________________________________________ ftpuser ENABLED newuser1 ENABLED newuser2 ENABLED 12.00
bash$ disableftpuser -u newuser2 User newuser2 disabled $ enableftpuser -u newuser2 User newuser2 enabled
bashUsage: /usr/bin/addtechuser -u Username -t TechUsername $ addtechuser -u ftpuser -t tech
容器和镜像管理的便捷包装脚本,默认管理一个容器。若需管理多个容器,复制脚本并调整scripts/container.cfg。
| 名称 | 描述 |
|---|---|
| build.sh | 从scratch构建容器 |
| run.sh | 运行容器 |
| start.sh | 启动已停止的容器 |
| stop.sh | 停止运行中的容器 |
| rm.sh | 终止并删除所有运行中的容器 |
| rmi.sh | 删除容器镜像 |
| mng.sh | 从另一个容器管理Docker卷 |
直接在项目文件夹中执行命令即可。
容器的功能脚本,默认管理一个容器。若需管理多个容器,复制脚本并调整scripts/container.cfg。
| 名称 | 描述 |
|---|---|
| logs.sh | 从容器下载日志文件 |
| backup.sh | 备份容器的Docker卷到tar归档文件 |
| restore.sh | 将备份恢复到容器 |
bash$ ./scripts/logs.sh
日志文件以时间戳命名,后缀为.log,位于项目的logs文件夹中。
bash$ ./scripts/backup.sh
备份文件将保存到项目的backups文件夹中。
bash$ ./scripts/restore.sh ./backups/ProFTPBackup-2015-03-08-16-28-40.tar
创建临时容器,将备份文件解压到Docker卷,之后停止并重启容器。
通过复制项目文件夹并调整scripts/container.cfg配置,可支持同一主机上的多个容器管理。配置项说明:
| 名称 | 描述 |
|---|---|
| CONTAINER_NAME | Docker容器名称 |
| IMAGE_NAME | Docker镜像名称 |
| HOST_PORT | 主机暴露的端口 |
| BACKUP_DIRECTORY | 备份目录 |
| LOGFILE_DIRECTORY | 日志下载目录 |
| FILE_TIMESTAMP | 日志和备份的时间戳格式 |
注意:CONTAINER_VOLUME不可修改。
该项目支持Docker Compose,配置文件为docker-compose.yml。示例:
bash$ docker-compose up -d
启动detached模式的Docker容器。
更多细节请参考https://docs.docker.com/compose/%E3%80%82
可在Hipchat留言提问:blacklabelops/hipchat
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务