docker搭建ftp(外网访问)

通过docker创建容器命令生成ftp用户,在连接时无法获取ftp目录;docker-compose脚本生成ftp容器同样无法获取目录。通过下面办法可实现docker容器中的ftp正常连接和访问。

1、拉取镜像

docker pull fauria/vsftpd

2、生成/启动ftp容器(不创建ftp用户)

docker run -d -v /etc/localtime:/etc/localtime:ro -v /home/dr/data/ftp:/home/vsftpd  -p 20:20 -p 21:21 -p  21100-21110:21100-21110 -e PASV_ADDRESS=*.*.*.* -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 -e LOCAL_UMASK=022 -e FILE_OPEN_MODE=0755 --name xj_ftp --restart=always fauria/vsftpd
# -e LOCAL_UMASK=022 -e FILE_OPEN_MODE=0755解决ftp上传文件权限不够的问题

-e PASV_ADDRESS配置为宿主机公网IP地址

3、创建容器用户

  • 进入容器
docker exec -it -u root xj_ftp bash
  • 手动创建一个用户目录,目录名即用户名
mkdir /home/vsftpd/ftpuser
  • 编辑用户和密码
vi /etc/vsftpd/virtual_users.txt

在这里插入图片描述
备注: 用户名和之前创建的目录名一致

  • 用户信息写入到数据库
/usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db
  • 返回宿主机重启容器
docker restart xj_ftp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_16548009

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值