1,拉取鏡像

首先執行如下命令將鏡像下載到本地:

?docker pull fauria/vsftpd

2,啟動容器

執行如下命令實例化?ftp?服務:

?

?參數說明:

  • /var/ftp:/home/vsftpd:映射?docker?容器?ftp?文件根目錄(冒號前面是宿主機的目錄,建議宿主機使用?/var?這樣公共權限文件夾,如果使用類似?/home?這樣的目錄可能會造成客戶端無法連接上服務器問題)
  • -p:映射?docker?端口(冒號前面是宿主機的端口)
  • -e FTP_USER=test -e FTP_PASS=test?:設置默認的用戶名密碼(都為?test
  • PASV_ADDRESS:宿主機?ip,當需要使用被動模式時必須設置。
  • PASV_MIN_PORT~ PASV_MAX_PORT:給客服端提供下載服務隨機端口號范圍,默認?21100-21110,與前面的?docker?端口映射設置成一樣。

?

????docker run -d -v /????????var????????/ftp:/home/vsftpd /?????

??-p 20:20 -p 21:21 -p? 21100-21110:21100-21110 /??

??-e FTP_USER=test -e FTP_PASS=test /??

??-e PASV_ADDRESS=192.168.60.128 /??

??-e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 /??

??--name vsftpd --restart=always fauria/vsftpd??

?

3,防火墻配置

? ? 如果?CentOS?服務器有防火墻,為了讓客戶端能夠訪問?ftp?服務。我們可以關閉防火墻,或者執行如下命令配置?firewall?防火墻策略:

? ?關閉防火墻

?

4,新建用戶文件夾

(1)首先執行如下命令進入到容器里面:

??docker?????exec?????-i -t vsftpd bash??

?????mkdir?????????/home/vsftpd/test?????

?vi /home/vsftpd/test/1.txt

?

5,訪問服務

?

附:增加一個新用戶

(1)首先執行如下命令進入到容器里面:

????docker???????????exec?????????-i -t vsftpd bash????

(2)創建新用戶的文件夾:

?mkdir /home/vsftpd/hangge

?(3)編輯用戶配置文件:

?vi /etc/vsftpd/virtual_users.txt

zym2

zym2

?(5)保存退出后執行如下命令,把登錄的驗證信息寫入數據庫

?/usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db

?(6)最后退出容器,并重啟容器可以使用新用戶連接?FTP?服務了。

??exit??

??docker restart vsftpd??