docker pure-ftp 搭建ftp服务器

1.采用docker-compose搭建ftp服务器

引用:http://www.bubuko.com/infodetail-1182681.html

docker-compose.yml的内容如下

ftp:
 image: stilliard/pure-ftpd

  volumes:
    - "../wp/app:/home/ftpusers/code"
    - "./pure-ftpd:/etc/pure-ftpd"
  ports:
    - "21:21"
    - "30000:30000"
    - "30001:30001"
    - "30002:30002"
    - "30003:30003"
    - "30004:30004"
    - "30005:30005"
    - "30006:30006"
    - "30007:30007"
    - "30008:30008"
    - "30009:30009"
  environment:
    PUBLICHOST: localhost
当该服务器可以连接互联网时,可以直接在docker-compose.yml所在的目录下执行:

    $ docker-compose up -d

即可直接进行搭建,若该服务器无法连接外网,则需要将提前准备好的stilliard/pure-ftpd:latest镜像(如名称为:pure-ftpd.tar)载入该服务器

    $ docker load -i pure-ftpd.tar

安装docker-compose详情见:http://blog.csdn.net/sun1021873926/article/details/70037478

2.给ftp服务器增加虚拟用户

引用:http://blog.csdn.net/ycdyx/article/details/39100203

首先,可以在系统中添加相应的用户和组,如用户ftpuser 和组ftpgroup 。

$ groupadd ftpgroup
$ useradd ftpuser -g ftpgroup -d /home/ftp -s /sbin/nologin 

也可以是能登录系统的用户,但最好是不能登录系统的用户,安全。

然后利用pure-pw命令添加虚拟用户,如添加虚拟用户user1,并指定查看目录为/var/www/site1。

 $ pure-pw useradd user1 -u ftpuser -g ftpgroup -d /var/www/site1

另:一个系统用户可以绑定多个虚拟用户,然后控制所查看的目录。如再添加虚拟用户user2,并指定查看目录为/var/www/site2

$ pure-pw useradd user2 -u ftpuser -g ftpgroup -d /var/www/site2

pure-pw完之后会要求输入密码,也就是设置登录ftp用户的密码。添加完之後,让 pure-ftpd 建立虚拟用户数据

$ pure-pw mkdb

这样完了之后:

 $ /etc/init.d/pure-ftpd restart

我在添加虚拟用户时,在容器里面执行【/etc/init.d/pure-ftpd restart】没有起到作用,
随后执行了ftp服务器容器的restart后,才可以正常使用,建议读者在使用此方法搭建ftp服务器时多尝试哈。
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐