使用 filezilla 连接到 docker 容器

Connect with filezilla to docker container

我是 运行 docker 容器 Google 云虚拟机。我尝试了几个小时从本地计算机上的 filezilla 连接到 运行 docker 容器。我已经开始像这样 docker 图片:

docker run -t -d --name test -p 2222:22 --link postgres7:postgres7 random_image /bin/bash

在我的 filezilla 连接配置中,我设置了:

主机:Google 云 IP 地址
端口:2222
协议:SFTP
登录类型:正常
用户:root(无密码)

尝试连接时出现此错误:

Status: Connecting to x.x.x.x:2222...
Response:   fzSftp started
Command:    open "root@x.x.x.x" 2222
Error:  Connection refused
Error:  Could not connect to server

我已经在 google 云引擎上打开了端口。

你必须sudo nano /etc/ssh/sshd_config,然后用Ctrl+W搜索PasswordAuth并修改为yes

然后您可以尝试通过端口 22 sftp:// 登录到您的 IP。

首先,不建议在 docker 容器上安装 ssh 服务器,但我是这样做的:

  1. 安装ssh客户端

apt-get install openssh-server

  1. 为 root(或任何你想连接的用户)设置密码

passwd (enter password twice)

  1. 在/etc/ssh/sshd_config中更改:

PermitRootLogin without-password

PermitRootLogin yes

  1. 重新启动 ssh 服务器

/etc/init.d/ssh restart

现在您可以使用您设置的密码以 root 身份连接任何 ftp 客户端到您的 docker 容器。