使用 Docker 搭建 FTP 服务,不仅十分简单,而且可以对宿主机有一定的隔离。下面以 windows 10 系统为例,演示如何通过容器运行 vsftpd 服务。
1,拉取镜像
首先执行如下命令将镜像下载到本地:
docker pull fauria/vsftpd
2,启动容器
执行如下命令实例化 ftp 服务:
docker run -d -v /home/vsftpd:/home/vsftpd -p 20:20 -p 21:21 -p 21100-21110:21100-21110 -e FTP_USER=Jolimark -e FTP_PASS=123456 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 --name vsftpd fauria/vsftpd
参数说明:
- /home/ftp:/home/vsftpd:映射 docker 容器 ftp 文件根目录(冒号前面是宿主机的目录)
- -p:映射 docker 端口(冒号前面是宿主机的端口)
- -e FTP_USER=Jolimark -e FTP_PASS=test :设置默认的用户名密码(为 test)
- PASV_MIN_PORT~ PASV_MAX_PORT:给客服端提供下载服务随机端口号范围,默认 21100-21110,与前面的 docker 端口映射设置成一样。
3、执行如下命令进入到容器里面
docker exec -i -t vsftpd bash
4、为方便演示,进入到前面创建的用户文件夹(Jolimark)下新建一个 1.txt 文件。
5、测试访问服务