0

    Docker搭建FTP服务器-解决传输难题

    2023.04.22 | admin | 195次围观

    不同电脑之间传递文件真实头疼,现在U盘也使用的很少了,对于大文件来说16G的文件也需要特殊的处理一下,即使能传输大文件ftp映射到本地,Mac上没有带转接口也是很头疼ftp映射到本地,各种不爽,想想还是利用Docker简易部署一个FTP Server用于临时的文件传输吧。

    mkdir ftpdir
    docker run -d \ 
      -p 21:21 \
      -p 20:20 \
      -p 21100-21110:21100-21110 
      -v $(PWD)/ftpdir:/home/vsftpd \
      -e FTP_USER=marionxue \
      -e FTP_PASS=passwd \
      -e PASV_ADDRESS=192.168.0.220 \
      -e PASV_MIN_PORT=21100 \
      -e PASV_MAX_PORT=21110 \
      --name vsftpd \
      --restart=always fauria/vsftpd

    在使用的上面的命令时,需要将PASV_ADDRESS修改为你的本地地址,以下对一些参数进行解释说明:

    -p: 进行端口绑定映射
    -v: 添加容器数据卷
    -e: FTP_USER=marionxue -e FTP_PASS=passwd 添加一个初始化用户marionxue
    PASV_MIN_PORT和PASV_MAX_PORT映射的是被动模式下端口使用范围

    用户验证配置

    # 登录容器内
    docker exec -it vsftpd bash 

    # 如果需要创建新用户,需要将用户和密码接入到以下文件内,默认里面包含了Docker启动容器时候创建的用户名和密码
    [root@a80ba09cdce1 /]# cat /etc/vsftpd/virtual_users.txt
    marionxue
    passwd

    #假如我们添加了user用户,我们需要建立对应用户的文件夹
    mkdir /home/vsftpd/user

    #把登录的验证信息写入数据库 
    /usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db

    重启容器

    docker restart vsftpd

    然后即可在window上找一个FTP软件远程连接即可

    window上使用FileZilla上传文件

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    标签: ftp命令ftp
    发表评论