在Linux服务器中使用Docker搭建ftp服务器
docker pull fauria/vsftpd
docker run -d -v /docker_data/vsftpd:/home/vsftpd -p 20:20 -p 21:21 -p 21100-21110:21100-21110 -e PASV_ADDRESS=<IP> -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 --name vsftpd --restart=always fauria/vsftpd
PASV_ADDRESS这个参数的的ip是宿主机的ip地址,当需要使用被动模式时必须设置。
/docker_data/vsftpd:/home/vsftpd将宿主机/docker_data/vsftpd这个文件夹映射到docker容器中的文件夹/home/vsftpd
创建用户
-
进入容器交互式环境:
docker exec -it -u root vsftpd bash -
手动创建一个用户目录,目录名即用户名:
mkdir /home/vsftpd/<username> -
编辑用户和密码:
vi /etc/vsftpd/virtual_users.txt
使用户名和之前创建的目录名一致。
-
将用户信息写入到数据库:
/usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db -
退出交互式环境并重启容器:
exit docker restart vsftpd -
浏览器访问地址
ftp://<username>:<password>@<ip>:21

1万+

被折叠的 条评论
为什么被折叠?



