Docker实例---搭建FTP服务器

使用Docker搭建ftp,是比较好的,可以对宿主机有一定的隔离,并且比较简单,可移植。

 

Step 1.

           首先你的机器安装了docker-io或者docker-ce。假如没有就先安装

Centos:$ sudo yum install docker-ce

Ubuntu:$ sudo apt-get update
        $ sudo apt-get install docker-ce

其他版本可以上网搜索

 

Step 2.

          其次你要有一个vsftpd的docker镜像

1. docker search vsftpd         #寻找vsftpd的镜像

#假如我们找到一个最多引用的,叫fauria/vsftpd

2. docker pull fauria/vsftpd  #把镜像pull到本地

Step 3 .创建vsftpd的container

$ docker run -d -p 21:21 -p 20:20 -p 21100-21110:21100-21110 -v /Ftpfile:/home/vsftpd -e 

FTP_USER=myuser -e FTP_PASS=mypass -e PASV_ADDRESS=192.168.120.88 -e PASV_MIN_PORT=21100 

-e PASV_MAX_PORT=21110 --name vsftpd --restart=always fauria/vsftpd


#-p进行端口绑定映射
# -v进行文件目录的映射 FTP_UESR 和FTP_PASS如果设定了会在container里面的 
#/etc/vsftpd/virtual_users.txt

#PASV_MIN_PORT和PASV_MAX_PORT映射的是被动模式下端口使用范围

#PASV_ADDRESS指的的宿主机地址

Step 4.

      修改、完善vsftpd的设置

#1、我们先进入container里面

docker exec -i -t vsftpd bash 

#2、修改并生成虚拟用户模式下的用户db文件

vi /etc/vsftpd/virtual_users.txt #编辑配置文件写入用户跟密码

#假如我们添加了user用户

mkdir /home/vsftpd/user #建立新用户文件夹 

/usr/bin/db_load -T -t hash
 -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db
 #把登录的验证信息写入数据库

Step 5.

          重启container,验证结果

docker restart vsftpd

Docker实例---搭建FTP服务器_第1张图片

Docker实例---搭建FTP服务器_第2张图片

 

你可能感兴趣的:(云计算)