我使用的镜像是fauria/vsftpd,创建并启动容器命令:
docker run -d -v /data/ftproot/:/home/vsftpd -p 20:20 -p 21:21 -p 21100-21110:21100-21110 -e FTP_USER=ftpuser -e FTP_PASS=ThisisPassword -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 -e PASV_ADDRESS=36.x.x.x -e LOG_STDOUT=1 --name vsftpd --restart=always fauria/vsftpd
注意
1、挂载目录时只能挂载ftp根目录,挂载配置文件目录或者目志目录会导致vsftpd无法读取配置文件。即使将宿主主机对应目录设置成777也不行。
2、使用被动模式时,要将PASV_ADDRESS=设置为公网IP。必须在创建容器时设置,容器创建完成后修改vsftpd.conf不生效,因为重启容器时,配置会被覆盖
3、如果使用云服务器,需要将21和被动端口全部打开