欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

docker部署ftp服务器

程序员文章站 2022-05-18 21:26:11
...

docker部署ftp服务器

1.背景

​ FTP是一种传输协议,FTP服务器可以有客户端通过FTP协议访问,上传或下载文档。有什么用,其实就是很多人公用存储资料。

2.拉取构建ftp服务器

查看官网提供的ftp说明

https://hub.docker.com/r/fauria/vsftpd

使用最新的fauria/vsftpd镜像即可。

官网提供的搭建建议:

(生产环境中可用,已经绑定账户,挂载目录,启动了 FTP 的主动和被动模式)

docker run -d -v /my/data/directory:/home/vsftpd \
-p 20:20 -p 21:21 -p 21100-21110:21100-21110 \
-e FTP_USER=myuser -e FTP_PASS=mypass \
-e PASV_ADDRESS=127.0.0.1 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 \
--name vsftpd --restart=always fauria/vsftpd

修改为自身使用的:

docker run --rm \
--name csu-vsftpd \
-v /data/ftp-home/data/vsftpd:/home/vsftpd \
-v /data/ftp-home/log/vsftpd:/var/log/vsftpd \
-p 20:20 \
-p 21:21 \
-p 21100-21110:21100-21110 \
-e FTP_USER=csu-user \
-e FTP_PASS=csu-pass \
-e PASV_ADDRESS=172.19.32.101 \
-e PASV_MIN_PORT=21100 \
-e PASV_MAX_PORT=21110 \
fauria/vsftpd

再次,将上面的格式转换为指定的不带“\”的格式,然后部署在dcos上,

docker run --name csu-vsftpd -v /data/ftp-home/data/vsftpd:/home/vsftpd -v /data/ftp-home/log/vsftpd:/var/log/vsftpd -p 20:20 -p 21:21 -p 21100-21110:21100-21110 -e FTP_USER=csu-user -e FTP_PASS=csu-password -e PASV_ADDRESS=172.19.32.101 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 fauria/vsftpd

3.连接ftp使用

连接使用ftp服务器,使用的端口默认此处21可用;账号为csu-user,密码为csu-password。

可以使用的ftp连接工具,Xftp或者flashFTP工具即可。

docker部署ftp服务器

如果想大批量的传输查看服务器上的文件,则在172.19.32.101服务器上的/data/ftp-home/data/vsftpd目录下面对应的账号下面,即可看到数据文件;

备注:最终部署ftp服务的位置,dcos上的/infrastructure/general-tools/cms-vsftpd下。

4.添加ftp账号

(如果不需要新账号,则不用添加,使用默认即可,默认值即启动容器时候环境变量中配置的账号密码)

如果想手动创建自己的账号,可以按照如下操作;

Manually add a new FTP user to an existing container:

docker exec -i -t csu-vsftpd bash
mkdir /home/vsftpd/myuser
echo -e "myuser\nmypass" >> /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
相关标签: 工具