1,拉取镜像
docker pull fauria/vsftp
2,启动容器
docker run -d -v /home/ftp:/home/vsftpd
-p 20:20 -p 21:21 -p 21100-21110:21100-21110
-e FTP_USER=test -e FTP_PASS=test
-e PASV_ADDRESS=192.168.10.19
-e PASV_MIN_ROPT=21100 -e PASV_MAX_PORT=21110
--name vsftpd --restart=always fruria/vsftpd
参数说明:
- /home/ftp:/home/vsftpd:映射 docker 容器 ftp 文件根目录(冒号前面是宿主机的目录)
- -p:映射 docker 端口(冒号前面是宿主机的端口)
- -e FTP_USER=test -e FTP_PASS=test :设置默认的用户名密码(都为 test)
- PASV_ADDRESS:宿主机 ip,当需要使用被动模式时必须设置。
- PASV_MIN_PORT~ PASV_MAX_PORT:给客服端提供下载服务随机端口号范围,默认 21100-21110,与前面的 docker 端口映射设置成一样。
3,新建用户
进入容器:
docker exec -i -t vsftpd bash
新建用户的文件夹:
mkdir /home/vsftpd/text2
编辑用户配置文件:
vi /etc/vsftpd/virtual_users.txt
把新用户名和密码写入txt中。
写入数据库中:
usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db
退出容器,重启当前容器:
exit
docker restart vsftpd