docker-compose.yml的内容如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
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所在的目录下执行:
1
|
$ docker-compose up -d |
即可直接进行搭建,若该服务器无法连接外网,则需要将提前准备好的stilliard/pure-ftpd:latest镜像(如名称为:pure-ftpd.tar)载入该服务器
1
|
$ docker load -i pure-ftpd. tar |
2.给ftp服务器增加虚拟用户
首先,可以在系统中添加相应的用户和组,如用户ftpuser 和组ftpgroup 。
1
2
|
$ groupadd ftpgroup $ useradd ftpuser -g ftpgroup -d /home/ftp -s /sbin/nologin |
也可以是能登录系统的用户,但最好是不能登录系统的用户,安全。
然后利用pure-pw命令添加虚拟用户,如添加虚拟用户user1,并指定查看目录为/var/www/site1。
1
|
$ pure-pw useradd user1 -u ftpuser -g ftpgroup -d /var/www/site1 |
另:一个系统用户可以绑定多个虚拟用户,然后控制所查看的目录。如再添加虚拟用户user2,并指定查看目录为/var/www/site2
1
|
$ pure-pw useradd user2 -u ftpuser -g ftpgroup -d /var/www/site2 |
pure-pw完之后会要求输入密码,也就是设置登录ftp用户的密码。添加完之後,让 pure-ftpd 建立虚拟用户数据
1
|
$ pure-pw mkdb |
这样完了之后:
1
|
$ /etc/init.d/pure-ftpd restart |
我在添加虚拟用户时,在容器里面执行【/etc/init.d/pure-ftpd restart】没有起到作用,随后执行了ftp服务器容器的restart后,才可以正常使用,建议读者在使用此方法搭建ftp服务器时多尝试哈。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/sun1021873926/article/details/70175778