前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker一行命令完成FTP服务搭建

Docker一行命令完成FTP服务搭建

作者头像
zhaoolee
发布2019-09-18 11:43:58
1.7K0
发布2019-09-18 11:43:58
举报
文章被收录于专栏:木子昭的博客木子昭的博客

一行命令

代码语言:javascript
复制
docker run -d \
-v /share:/home/vsftpd \
-p 20:20 \
-p 21:21 \
-p 21100-21110:21100-21110 \
-e FTP_USER=zhaoolee \
-e FTP_PASS=eelooahz \
-e PASV_ADDRESS=47.106.108.135 \
-e PASV_MIN_PORT=21100 \
-e PASV_MAX_PORT=21100 \
--name zhaoolee_vsftpd  \
--restart=always \
fauria/vsftpd

参数解释:

-d 表示新建容器在后台运行

-v 表示设置目录映射 设置举例 -v /share:/home/vsftpd 将宿主机的/share目录映射到docker容器的/home/vsftpd (用户zhaoolee登录后, 程序会在/home/vsftpd文件夹下, 自动新建一个zhaoolee文件夹, 用来存放上传的文件)

-p 为映射端口 -p 20:20 表示将宿主机20端口映射到docker容器的20端口,-p 21:21 表示将宿主机21端口映射到docker容器的21端口, -p 21100-21110:21100-21110 表示将宿主机的2110021110端口映射到docker容器的2110021110端口

与端口密切相关的是主动模式被动模式两种连接方式

  • 主动模式: 21端口为ftp默认的端口,是ftp的控制端口, 而20端口是ftp的数据端口, 21端口用来接收客户端连接, 20端口用来传输数据; 服务器(主动地)定下规矩,客户端与服务端建立连接, 那通过21端口, 想传数据就通过20端口, 20端口和21端口结合到一起就是ftp的主动模式
  • 被动模式: 主动模式有一些安全性问题, 如果有人想攻击你的ftp服务, 就直接到20端口堵你, 为了避免数据出门被人堵, 就出现了被动模式, 被动模式把传数据的20端口, 改成了范围, 比如上文中的21100-21110, 具体哪个值由客户端来定(比如21115), 这样传出的数据就不容易被人堵,安全性大大提升, 现在大多数ftp客户端,默认使用被动模式连接服务器, 也就是由客户端定传数据的端口

-e 表示追加参数

FTP_USER 为ftp登录用户名, 设置示例 FTP_USER=zhaoolee

FTP_PASS 为ftp登录密码, 设置示例 FTP_PASS=eelooahz

PASV_ADDRESS 为外网ip , 设置示例PASV_ADDRESS=104.243.20.148 (非常重要: 这里一定要绑定宿主机对外的ip, 否则后面会连不上, zhaoolee在这里调了好久...)

PASV_MIN_PORT为客户端连接服务器的最小端口号为21100 (被动模式下服务端最小端口号)

PASV_MAX_PORT为客户端连接服务器的最大端口号为21110 (被动模式下服务端最大端口号)

--name zhaoolee_vsftpd 表示容器名为 zhaoolee_vsftpd(这个名字可以自定义)

--restart=always 表示 restart可以

fauria/vsftpd 代表镜像名

用阿里云做个测试

  • 开启 端口20 , 端口21, 端口段21100-21110

  • 创建容器

  • 通过ftp上传文件

小结:

  • ftp是一个常用的服务, 这里使用vsftp的docker方式完成搭建, 一行命令搞定
  • docker镜像 fauria/vsftpd 开源地址: https://github.com/fauria/docker-vsftpd, 可以找到详细的操作文档
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.09.17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一行命令
  • 参数解释:
  • 用阿里云做个测试
  • 小结:
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档