我一直在尝试使用以下docker容器配置一个简单的ftp服务器:
https://hub.docker.com/r/fauria/vsftpd
我将容器部署在一个亚马逊ec2实例上,并为20和21打开了端口。
我的docker-compose是这样的:
version: '3.6'
services:
vsftpd:
image: fauria/vsftpd
environment:
- FTP_USER=myuser
- FTP_PASS=mYp4sS
ports:
- 20:20
- 21:21
volumes:
- /var/app/ftp:/home/vsftpd
- /var/log/ftp:/var/log/vsftpd当启动docker时,我得到以下日志,然后什么都没有:
vsftpd | *************************************************
vsftpd | * *
vsftpd | * Docker image: fauria/vsftpd *
vsftpd | * https://github.com/fauria/docker-vsftpd *
vsftpd | * *
vsftpd | *************************************************
vsftpd |
vsftpd | SERVER SETTINGS
vsftpd | ---------------
vsftpd | ? FTP User: myuser
vsftpd | ? FTP Password: mYp4sS
vsftpd | ? Log file: /var/log/vsftpd/vsftpd.log
vsftpd | ? Redirect vsftpd log to STDOUT: No.但是当我尝试使用filezilla或事件cli ftp进行ftp连接时,我总是得到一个ECONNREFUSED - Connection refused by server问题。
如何使ftp服务器可访问?
发布于 2021-03-08 15:23:10
问题出在docker-compose文件中的端口声明上,如果您在github存储库中的示例中看到,使用的是带有ip地址和端口的语句,而不是像以前那样只使用端口。
'3.6'
services:
vsftpd:
image: fauria/vsftpd
environment:
- FTP_USER=myuser
- FTP_PASS=mYp4sS
ports:
- 0.0.0.0:20:20
- 0.0.0.0:21:21
volumes:
- /var/app/ftp:/home/vsftpd
- /var/log/ftp:/var/log/vsftpdjust in case look in the file
https://stackoverflow.com/questions/65070121
复制相似问题