FTP ftplib链接文件上传下载;docker 安装ftp服务

参考:
https://blog.csdn.net/zsh501736479/article/details/114385736
https://blog.csdn.net/qq_39511050/article/details/122027052

from ftplib import FTP

# 连接到FTP服务器
ftp = FTP('ftp.example.com')
ftp.login(user='username', passwd='password')

# 列出FTP服务器上的文件和目录
ftp.cwd('/path/to/directory')
file_list = ftp.nlst()
print(file_list)

# 下载文件
local_filename = 'local_file.txt'
remote_filename = 'remote_file.txt'
with open(local_filename, 'wb') as file:
    ftp.retrbinary('RETR {}'.format(remote_filename), file.write)

# 上传文件
local_filename = 'local_file.txt'
remote_filename = 'remote_file.txt'
with open(local_filename, 'rb') as file:
    ftp.storbinary('STOR {}'.format(remote_filename), file)

# 关闭FTP连接
ftp.quit()

docker 安装ftp服务

参考:
https://blog.csdn.net/weixin_42132446/article/details/127631780
https://www.mxblog.com.cn/docker%E5%AE%89%E8%A3%85ftp%E6%96%87%E4%BB%B6%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%8F%8Aftp%E5%B7%A5%E5%85%B7%E7%B1%BB%E7%9A%84%E4%BD%BF%E7%94%A8.html

//run 启动镜像
//-d 设置镜像
//-p 设置端口号
//-v 设置ftp文件挂载点 /Users/localhost/Documents/soft:/home/vsftpd 冒号前面为宿主机地址,后面为映射ftp上的地址
//-e FTP_USER=admin -e FTP_PASS=admin 设置ftp用户名密码
//-e PASV_ADDRESS=127.0.0.1 宿主机地址
//-e PASV_MIN_PORT=21100 给客服端提供下载服务随机端口号范围,默认 21100-21110,与前面的 docker 端口映射设置成一样。

docker run -d -p 21:21 -p 20:20 -p 21100-21110:21100-21110 -v /Users/localhost/Documents/soft:/home/vsftpd -e FTP_USER=admin -e FTP_PASS=admin -e PASV_ADDRESS=127.0.0.1 -e PASV_MIN_PORT=21100
-e PASV_MAX_PORT=21110 --name vsftpd --restart=always fauria/vsftpd

你可能感兴趣的:(知识点,windows,服务器,linux)