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