FTP服务器运行:
docker run -d -p 21:21 -p 21000-21010:21000-21010 -e USERS="one|1234" -e ADDRESS=ftp.site.domain delfer/alpine-ftp-server
我收到以下错误:
Exception in thread "main" java.lang.RuntimeException: org.apache.commons.net.ftp.FTPConnectionClosedException: Connection closed without indication.
at ru.spb.client.FtpClient$.main(FtpClient.scala:23)
at ru.spb.client.FtpClient.main(FtpClient.scala)
Caused by: org.apache.commons.net.ftp.FTPConnectionClosedException: Connection closed without indication.
at org.apache.commons.net.ftp.FTP.getReply(FTP.java:568)
at org.apache.commons.net.ftp.FTP.getReply(FTP.java:556)
Edit:
docker日志返回:Changing password for one
New password:
Bad password: too short
Retype password:
adduser: /ftp/one: No such file or directory
passwd: password for one changed by root
seems like pidfd_open syscall does not work, falling back to
polling
failed to watch for direct child exit (pidfd_open error): Operation not permitted
可能会错过一些重要的连接设置吗?
FTP容器 - Docker Run命令:
docker run -d \
-p 21:21 \
-p 21000-21010:21000-21010 \
-e USERS="one|Passw0rd!" \
-e ADDRESS=ftp.site.domain \
delfer/alpine-ftp-server
-e USERS="one|Passw0rd!"
,密码太短,因此将密码更改为
1234
Passw0rd!
,
-e ADDRESS=ftp.site.domain
是您的FTP服务器名称。
add
ftp.site.domain
至
ftp.site.domain
127.0.0.1
快速替代 Find FTP容器ID
127.0.0.1 localhost ftp.site.domain
如果容器ID是docker ps
05da9c08858f
检查FTP服务是否正在运行?
在容器中,运行命令:
docker exec -it 05da9c08858f sh
如果什么也没返回,FTP服务没有运行。
开始FTPServicenetstat -tulnp | grep :21
再次命令:
vsftpd /etc/vsftpd/vsftpd.conf
netstat -tulnp | grep :21
ExIT容器:
netstat -tulnp | grep :21
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 45/vsftpd
您的测试应用程序ftpclient.scala
更改FTP服务器到
exit
更改密码到
ftp.site.domain
Passw0rd!
import org.apache.commons.net.ftp.FTPClient
import java.io.IOException
object FtpClient {
def main(args: Array[String]): Unit = {
val ftpClient = new FTPClient()
try {
ftpClient.connect("ftp.site.domain", 21)
val success = ftpClient.login("one", "Passw0rd!")
if (success) {
println("Success connect")
}
} catch {
case e: IOException => throw new RuntimeException(e)
} finally {
//
}
}
}
$ scala -version
Scala code runner version: 1.5.4
Scala version (default): 3.6.4