使用Docker創(chuàng)建FTP服務(wù)器的過程解析
我們先了解一下FTP
文件傳輸協(xié)議(File Transfer Protocol,F(xiàn)TP)是用于在網(wǎng)絡(luò)上進(jìn)行文件傳輸?shù)囊惶讟?biāo)準(zhǔn)協(xié)議,它工作在 OSI 模型的第七層, TCP 模型的第四層, 即應(yīng)用層, 使用 TCP 傳輸
不是 UDP, 客戶在和服務(wù)器建立連接前要經(jīng)過一個“三次握手”的過程, 保證客戶與服務(wù)器之間的連接是可靠的, 而且是面向連接, 為數(shù)據(jù)傳輸提供可靠保證。
FTP允許用戶以文件操作的方式(如文件的增、刪、改、查、傳送等)與另一主機(jī)相互通信。然而, 用戶并不真正登錄到自己想要存取的計(jì)算機(jī)上面而成為完全用戶, 可用FTP程序訪問遠(yuǎn)程資源, 實(shí)現(xiàn)用戶往返傳輸文件、目錄管理以及訪問電子郵件等等, 即使雙方計(jì)算機(jī)可能配有不同的操作系統(tǒng)和文件存儲方式。
使用 Docker 搭建 FTP 服務(wù),不僅十分簡單,而且可以對宿主機(jī)有一定的隔離。下面介紹下Docker創(chuàng)建FTP服務(wù)器,內(nèi)容介紹如下所示:
一.創(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
二.命令含義
參數(shù) | 含義 |
---|---|
-d | 后臺啟動容器 |
-p 20:20 | 將外部的20端口映射到內(nèi)部的20端口 |
-p 21:21 | 將外部的21端口映射到內(nèi)部的21端口 |
-p 21100-21110:21100-21110 | 將外部的 21100-21110端口映射到內(nèi)部的21100-21110端口 |
-v /opt/vsftpd/file:/home/vsftpd | 將本地磁盤的 /opt/vsftpd/file路徑映射到內(nèi)部的/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 | 指定本機(jī)的ip |
-e PASV_ENABLE=YES | 啟動被動模式 |
–name vsftpd | 取一個名字,之后可以用(docker stop 名字 )來停止容器 |
–restart=always | 開機(jī)自啟動 |
–privileged=true | 容器內(nèi)用戶獲取root權(quán)限 |
fauria/vsftpd | 倉庫的鏡像 |
三.客戶端連接
1.客戶端可以直接安裝filezilla進(jìn)行連接
如果你的客戶端連接不上,你需要用telnet命令來看下
telnet 10.73.139.201 21
如果報(bào)錯,那可能是防火墻沒有打通
2.如果是mac用戶,也可以用終端的ftp命令進(jìn)行連接
ftp 10.73.139.201
輸入賬號admin,密碼1234
然后ls命令,如果報(bào)錯
500 Illegal PORT command.
500 Unknown command.
425 Use PORT or PASV first.
可以在ftp下執(zhí)行以下命令
pass
輸出
Passive mode on
這個時候,就可以正常的ls了
到此這篇關(guān)于Docker創(chuàng)建FTP服務(wù)器的文章就介紹到這了,更多相關(guān)Docker FTP服務(wù)器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker鏡像+nginx 部署 vue 項(xiàng)目的方法
這篇文章主要介紹了Docker鏡像+nginx 部署 vue 項(xiàng)目的方法,幫助大家更好的使用docke鏡像,感興趣的朋友可以了解下2020-10-10解決docker拉取鏡像報(bào)錯:error pulling image configurat
在使用Docker拉取Kafka鏡像時可能會遇到"error pulling image configuration"的錯誤,這可以通過編輯Docker配置文件并重啟Docker服務(wù)來解決,具體步驟包括:1. 編輯Docker配置文件;2. 使用命令systemctl restart docker重啟Docker服務(wù)2024-11-11docker實(shí)現(xiàn)將本地文件復(fù)制到docker容器內(nèi)
這篇文章主要介紹了docker實(shí)現(xiàn)將本地文件復(fù)制到docker容器內(nèi)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01docker-compose快速搭建docker私有倉庫的步驟
這篇文章主要介紹了docker-compose快速搭建docker私有倉庫的步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Docker容器處于Removal in process無法刪除問題及解決
這篇文章主要介紹了Docker容器處于Removal in process無法刪除問題及解決方案,具有很好的參考價值,希望對大家有所幫助。2023-07-07Docker swarm如何通過docker-compose部署應(yīng)用
這篇文章主要介紹了Docker swarm如何通過docker-compose部署應(yīng)用問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02docker網(wǎng)絡(luò)及部署集群和打包鏡像問題
這篇文章主要介紹了docker網(wǎng)絡(luò)及部署集群和打包鏡像問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08