继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

使用Docker-compose安装pure-ftp

哔哔one
关注TA
已关注
手记 463
粉丝 93
获赞 543

安装目的

  • 项目整体计划是用docker-compose部署lnmp服务器

  • pure-ftp用于管理独立于doker容器之外的数据文件,建议安装到开发环境和测试环境并对程序员开放权限

  • pure-ftp安装简单, 建议作为第一个docker服务进行练习

前置条件

  • 学习 Docker从入门到实践

  • 测试环境建议为windows10专业版和ubuntu16.04,其它环境本人未测试

  • 已在服务器上安装docker ce和docker-compose

安装准备

  • 新建docker文件夹,如d:\docker(windows)或/opt/docker(ubuntu),作为学习时的简化操作,它将映射到ftp用户根目录,用户可以通过ftp管理这个文件夹。

  • 新建docker/data/pure-ftpd/conf文件夹,用于存放pure-ftpd的配置数据,这样以后每次删除pure-ftpd容器重新安装时,就不用再重新设置ftp的用户名和密码了

  • 新建一个空文件夹,为与后续文章保持一致性,建议文件夹路径为docker/docker_compose/pure-ftpd

  • ubuntu下设置docker文件夹权限为0777,以便于后续操作和学习

新建docker-compose安装文件

在docker/docker_compose/pure-ftpd文件夹下新建一个文件,文件名为docker-compose.yml

version: "2"services:
    ftp:
        container_name: pure_ftpd
        image: stilliard/pure-ftpd
        volumes:
            - "/opt/docker:/home/ftpusers/docker_admin"
            - "/opt/docker/data/pure-ftpd/conf:/etc/pure-ftpd"
        # restart: always
        ports:
            - "21:21"
            - "20000-20200:20000-20200"
            - "30000-30200:30000-30200"
        environment:
            PUBLICHOST: localhost

安装文件的命令说明

  • version 当前版本号

  • services 服务

  • ftp 服务名称,可随意命名

  • container_name 强制定义容器名称,如删除此行,系统会自动命名容器

  • image 从哪个镜像进行安装

  • volumes 映射文件路径

  • "/opt/docker/data:/home/ftpusers/docker_admin" 把之前建立的/opt/docker文件夹映射到用户根目录,windows下本行应改为

"d:/docker:/home/ftpusers/docker_admin"
  • "/opt/docker/data/pure-ftpd/conf:/etc/pure-ftpd" 把之前建立的/opt/docker/data/pure_ftp/conf文件夹映射到配置目录,windows下本行应改为

"d:/docker/data/pure-ftpd/conf:/etc/pure-ftpd"
  • restart: always 容器会随着docker自动重启,一开始测试时建议先把这行注释掉,等安装完成测试成功后重新安装时再加上这行。

  • ports 指定容器开放的端口

  • "21:21" ftp的默认端口

  • "20000-20200:20200" 被动模式端口

  • "30000-30200:30200" 主动模式端口

  • environment 设置镜像的环境变量

  • PUBLICHOST: localhost 默认服务器名称

进行安装

执行安装命令生成容器

docker-compose up -d

这条命令必须在docker/docker_compose/pure-ftpd下执行

-d参数让容器启动后在后台运行

添加用户

  • 执行命令进入容器内部

docker exec -it pure_ftp bash

执行这条命令后注意盘符变化,现在,你已经在容器内部了

  • 添加一个ftp用户

pure-pw useradd docker_admin -f /etc/pure-ftpd/passwd/pureftpd.passwd -m -u ftpuser -d /home/ftpusers/docker_admin
pure-pw mkdbexit

输入第一行命令后系统会提示输入密码和确认密码
注意第一行命令结尾的路径,这正是我们之前映射的地址

安装完成

现在ftp容器已经成功安装了,可以通过ftp软件在docker文件夹进行上传和下载,后续我会写一些系列文章都将指定docker为学习文件夹,以便于调试。

版权申明

本文来自 第九区,转载请保留本段文字。



作者:简单5409
链接:https://www.jianshu.com/p/b02b9c21afaf

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP