簡體   English   中英

如何用 docker 配置 vsftpd

[英]How to configure vsftpd with docker

我一直在嘗試使用以下 docker 容器配置一個簡單的 ftp 服務器:

https://hub.docker.com/r/fauria/vsftpd

我將容器部署在 amazon 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 服務器可訪問?

問題出在 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/vsftpd

以防萬一查看文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM