Linux下使用docker搭建ftp服务器

项目里有个远程升级的需求,需要用到ftp服务器,Linux下搭建麻烦,所以采用docker,后期直接考就行,搞这个也是踩了半天的坑,特来记录下爬坑的过程

1.docker拉取ftp镜像

docker pull fauria/vsftpd

2.启动ftp服务器

启动ftp服务器
docker run -d -p 21:21 -p 20:20 -p 21100-21110:21100-21110 -v /home/harry/devicemanagement/test/uploadfile/upgrade:/home/vsftpd/root/upgrade -e FTP_USER=root -e FTP_PASS=123456 -e PASV_ADDRESS=宿主ip -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 --name vsftpd --restart=always fauria/vsftpd

注:红色标记从左到右:  映射端口: 21--控制用 20--数据传输用  挂载的本机文件路径:/home/harry/devicemanagement/test/uploadfile/upgrade   ftp容器的挂载位置:/home/vsftpd/root/upgrade  FTP_USER:用户  FTP_PASS:密码   PASV_ADDRESS:宿主ip

3.进去容器内部

sudo docker exec -it vsftpd /bin/bash
4.退出容器
exit

特别注意:坑来了

一切搞完,服务器也启动了,看着ftp已经好了,但是死活访问不到ftp里的文件,网上的各种方法都试过了还是不行,最后发现只能访问到根目录,所有我怀疑挂载位置可能是特定的,于是各种试,终于试出来了,ftp内部的挂载位置必须在/home/vsftpd/root/目录下,重新配完启动,好了,出来了

 

 

posted @ 2020-06-09 18:01  william_zhao  阅读(2794)  评论(0编辑  收藏  举报