1.采用docker-compose搭建ftp服务器
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
2.给ftp服务器增加虚拟用户
首先,可以在系统中添加相应的用户和组,如用户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服务器时多尝试哈。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。