【Docker】部署vsftpd之主动模式、被动模式

2018-12-24  本文已影响0人  minhelloworld

背景

前段时间,因为个人兴趣,想自己部署一个FTP服务器,然后骚情的用Docker部署一下,但是在启动的时候,使用了如下命令启动:

  docker run -u root -it -d --name ftp_server -p 21:21 -p 20:20  ftp:latest

初始并没有发现有什么问题,直到后来,使用ftplib模块时,发现一直无法连接至此服务器,然后开始追踪“元凶”,才发现踩了主动模式和被动模式的坑,记录一下,提醒自己~

def client():
   ftp = ftplib.FTP()
   ftp.set_debuglevel(2)
   ftp.connect(HOST, PORT)
   ftp.login(USERNAME, PASSWORD)
   ftp.encoding = 'utf-8'
   ftp.set_pasv(1)
   return ftp

if __name__ == '__main__':
   ftp = client()
   file = 'min.xlsx'
   f = open(file, 'rb')
   path = REPORT_SERVER_PATH
   ftp.cwd(REPORT_SERVER_PATH)
   ftp.storbinary('STOR %s' % f.name, f, 1024)
   ftp.quit()
image.png image.png

参考:https://www.jianshu.com/p/2381e0b6ecb4

上一篇下一篇

猜你喜欢

热点阅读