使用Docker創(chuàng)建FTP服務器的過程解析
我們先了解一下FTP
文件傳輸協(xié)議(File Transfer Protocol,FTP)是用于在網絡上進行文件傳輸的一套標準協(xié)議,它工作在 OSI 模型的第七層, TCP 模型的第四層, 即應用層, 使用 TCP 傳輸
不是 UDP, 客戶在和服務器建立連接前要經過一個“三次握手”的過程, 保證客戶與服務器之間的連接是可靠的, 而且是面向連接, 為數據傳輸提供可靠保證。
FTP允許用戶以文件操作的方式(如文件的增、刪、改、查、傳送等)與另一主機相互通信。然而, 用戶并不真正登錄到自己想要存取的計算機上面而成為完全用戶, 可用FTP程序訪問遠程資源, 實現用戶往返傳輸文件、目錄管理以及訪問電子郵件等等, 即使雙方計算機可能配有不同的操作系統(tǒng)和文件存儲方式。
使用 Docker 搭建 FTP 服務,不僅十分簡單,而且可以對宿主機有一定的隔離。下面介紹下Docker創(chuàng)建FTP服務器,內容介紹如下所示:
一.創(chuàng)建命令如下
docker run -d -p 21:21 -p 20:20 -p 21100-21110:21100-21110 -v /opt/vsftpd/file:/home/vsftpd -e FTP_USER=admin -e FTP_PASS=1234 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 -e PASV_ADDRESS=10.73.139.201 -e PASV_ENABLE=YES --name ftp --restart=always --privileged=true fauria/vsftpd
二.命令含義
| 參數 | 含義 |
|---|---|
| -d | 后臺啟動容器 |
| -p 20:20 | 將外部的20端口映射到內部的20端口 |
| -p 21:21 | 將外部的21端口映射到內部的21端口 |
| -p 21100-21110:21100-21110 | 將外部的 21100-21110端口映射到內部的21100-21110端口 |
| -v /opt/vsftpd/file:/home/vsftpd | 將本地磁盤的 /opt/vsftpd/file路徑映射到內部的/home/vsftpd路徑 |
| -e FTP_USER=admin | ftp的主用戶 |
| -e FTP_PASS=1234 | ftp主用戶的密碼 |
| -e PASV_MIN_PORT=21100 | 最小被動端口 |
| -e PASV_MAX_PORT=21110 | 最大被動端口 |
| -e PASV_ADDRESS=10.73.139.201 | 指定本機的ip |
| -e PASV_ENABLE=YES | 啟動被動模式 |
| –name vsftpd | 取一個名字,之后可以用(docker stop 名字 )來停止容器 |
| –restart=always | 開機自啟動 |
| –privileged=true | 容器內用戶獲取root權限 |
| fauria/vsftpd | 倉庫的鏡像 |
三.客戶端連接
1.客戶端可以直接安裝filezilla進行連接
如果你的客戶端連接不上,你需要用telnet命令來看下
telnet 10.73.139.201 21
如果報錯,那可能是防火墻沒有打通
2.如果是mac用戶,也可以用終端的ftp命令進行連接
ftp 10.73.139.201
輸入賬號admin,密碼1234
然后ls命令,如果報錯
500 Illegal PORT command.
500 Unknown command.
425 Use PORT or PASV first.
可以在ftp下執(zhí)行以下命令
pass
輸出
Passive mode on
這個時候,就可以正常的ls了
到此這篇關于Docker創(chuàng)建FTP服務器的文章就介紹到這了,更多相關Docker FTP服務器內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Docker安裝阿里云服務器和在虛擬機安裝遇到的坑(問題小結)
這篇文章主要介紹了Docker安裝阿里云服務器和在虛擬機安裝遇到的坑,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03
docker環(huán)境下分布式運行jmeter的教程詳解
這篇文章主要介紹了docker環(huán)境下分布式運行jmeter的教程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10

