diff --git a/vsftpd/Demo/README.md b/vsftpd/Demo/README.md index f2ea543..4673201 100644 --- a/vsftpd/Demo/README.md +++ b/vsftpd/Demo/README.md @@ -1,5 +1,36 @@ # 部署 vsftpd +- 容器的日志目录:/var/log/vsftpd/ +- 容器的数据目录 + - 匿名用户:/var/lib/ftp/ + - 普通用户:$HOME/ + +- 引入 vsftpd 配置 + - 环境变量 + ``` + environment: + VSFTPD_OPTS: '-owrite_enable=YES' + ``` + + - 挂载配置文件 + ``` + volumes: + - type: bind + source: ./vsftpd/vsftpd.conf + target: /etc/vsftpd/vsftpd.conf + ``` + +- 创建 vsftpd 普通用户,通过环境变量引入 + ``` + environment: + FTP_USER_1001: 'user1:123456' + FTP_USER_1002: 'user2:123456' + FTP_USER_1003: 'user3:123456' + # 创建三个用户,用户名分别是 user1、user2 和 user3 + # 对应的 uid 分别是 1001、1002 和 1003 + # 密码都是 123456 + ``` + - 服务器数据盘挂载到 /data/ 目录下 - 根据实际环境修改 - docker-compose.yml diff --git a/vsftpd/Demo/docker-compose.yml b/vsftpd/Demo/docker-compose.yml index 10652cf..d5f7816 100644 --- a/vsftpd/Demo/docker-compose.yml +++ b/vsftpd/Demo/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.7" services: - # 默认开启 anonymous 用户,无密码,数据目录是 /var/lib/ftp/ + # 默认开启 anonymous 用户,无密码 # 把容器的数据目录挂载到宿主机数据盘 /data/ftp # 默认主动模式,控制端口默认监听 21 vsftpd-anonymous: @@ -10,9 +10,9 @@ services: restart: "on-failure" network_mode: host volumes: - - type: bind - source: ./vsftpd/vsftpd.conf - target: /etc/vsftpd/vsftpd.conf + #- type: bind + # source: ./vsftpd/vsftpd.conf + # target: /etc/vsftpd/vsftpd.conf - type: bind source: ./vsftpd/log target: /var/log/vsftpd @@ -20,8 +20,8 @@ services: source: /data/ftp target: /var/lib/ftp - # 默认开启 anonymous 用户,无密码,数据目录是 /var/lib/ftp/ - # 创建普通用户 user1,uid: 1001,密码: 123456,允许上传下载,数据目录是 $HOME + # 默认开启 anonymous 用户,无密码 + # 创建普通用户 user1,uid: 1001,密码: 123456,允许上传下载 # 把容器的数据目录挂载到宿主机数据盘 /data/ftp # 默认主动模式,控制端口监听 3021 vsftpd-full: @@ -33,9 +33,9 @@ services: VSFTPD_OPTS: '-owrite_enable=YES -olisten_port=8021' network_mode: host volumes: - - type: bind - source: ./vsftpd/vsftpd.conf - target: /etc/vsftpd/vsftpd.conf + #- type: bind + # source: ./vsftpd/vsftpd.conf + # target: /etc/vsftpd/vsftpd.conf - type: bind source: ./vsftpd/log target: /var/log/vsftpd @@ -47,8 +47,8 @@ services: target: /home # 不允许 anonymous 登录 - # 创建普通用户 user2,uid 是 1002,密码: 123456,允许上传下载,数据目录是 $HOME - # 创建普通用户 user3,uid 是 1003,密码: 123456,允许上传下载,数据目录是 $HOME + # 创建普通用户 user2,uid 是 1002,密码: 123456,允许上传下载 + # 创建普通用户 user3,uid 是 1003,密码: 123456,允许上传下载 # 把容器的数据目录挂载到宿主机数据盘 /data/ftp # 开启被动模式,控制端口监听 8021,数据端口监听 8022 vsftpd: @@ -61,9 +61,9 @@ services: VSFTPD_OPTS: '-oanonymous_enable=NO -owrite_enable=YES -olisten_port=8021 -opasv_min_port=8022 -opasv_max_port=8022' network_mode: host volumes: - - type: bind - source: ./vsftpd/vsftpd.conf - target: /etc/vsftpd/vsftpd.conf + #- type: bind + # source: ./vsftpd/vsftpd.conf + # target: /etc/vsftpd/vsftpd.conf - type: bind source: ./vsftpd/log target: /var/log/vsftpd