Docker 搭建ftp服務器

1.拉取 鏡像 python

docker pull fauria/vsftpdweb



2.啓動容器 docker

    在223服務器保存的  ftp服務地址   /mnt/data/ftp  數據庫

docker run -d -v /mnt/data/ftp:/home/vsftpd -p 20:20 -p 2121:21 -p 21100-21110:21100-21110 -e FTP_USER=myuser -e FTP_PASS=mypass -e PASV_ADDRESS=192.168.10.224 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 --name vsftpd --restart=always fauria/vsftpd  編程

執行時 會出現 tomcat

docker: Error response from daemon: Conflict. The container name "/vsftpd" is already in use by container "0649a2c9fe3729f3ddeadf849ef299b1bcf8fa1406159f7e6c2b75f6a25ab319". You have to remove (or rename) that container to be able to reuse that name.
See 'docker run --help'.      執行 後 會發現  以前啓動失敗的容器還在  須要從新進行修改  將以前啓動失敗的容器刪除掉bash

docker ps –a   服務器

docker rm   <查詢到的容器的id >    上邊查詢到的app


3. 進入容器 webapp


docker exec -i -t vsftpd bash 進去docker

vi /etc/vsftpd/virtual_users.txt 編輯配置文件寫入用戶跟密碼

mkdir /home/vsftpd/user 創建新用戶文件夾

/usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db 寫入數據庫

docker restart +(虛擬機運行的 imageId) 重啓服務 


重啓後訪問對應的 服務器 端口,即可以登陸 ftp 服務




docker  複製另一個鏡像    啓動時啓動當前的tomcat  並重命名

docker run -d -p 8099:8080 -v /mnt/data/docker-file/FILE_MANAGE_PRJ:/usr/tomcat/webapps/     --name FILE_MANAGE_PRJ_tomcat  -d tomcat


docker 發佈tomcat 項目單獨掛載到本地文件夾


執行命令   經過掛載方式   docker tomcat 發佈當前將要發佈的項目

docker run -d -v /mnt/data/docker-file/FILE_MANAGE_PRJ/FILE_MANAGE_PRJ:/usr/local/tomcat/webapps/FILE_MANAGE_PRJ     -p   10001:8080   file_tomcat

docker cp -a <Local-Machine-Path> <Container-ID>:<Container-Path>


docker 查考容器的長 id

docker inspect -f '{{.ID}}' python

docker  將文件夾 cp 到容器中

docker cp -a <Local-Machine-Path> <Container-ID>:<Container-Path>

docker cp -a /mnt/data/docker-file/FILE_MANAGE_PRJ/    93e9c5401015:/usr/local/tomcat/webapps/


docker運行容器

docker run -it --rm –p   10001:8080     file_tomcat

docker run -it --rm –p 10002:8080 file_tomcat


docker 後臺啓動 ,不顯示日誌 打印

docker run –d  -p 1001:8080 meihua_tomcat


docker 查看容器日誌

docker logs -f -t --since="2018-10-10" --tail=100  meihua_tomcat

--since : 此參數指定了輸出日誌開始日期,即只輸出指定日期以後的日誌。

-f : 查看實時日誌

-t : 查看日誌產生的日期

-tail=10 : 查看最後的10條日誌。

edu_web_1 : 容器名稱


項目     發佈  

(*******使用已經啓動的容器***********)

將要發佈的文件上傳到 對應的docker服務宿主計算機

/mnt/data/docker-file/ 項目名

將文件複製到的容器

docker cp -a /mnt/docker-file/項目名/    3a3478726679:/usr/local/tomcat/webapps/項目名/

將正在運行的 ,已經上傳文件的容器 編程成一個新的容器 

docker  commit  -m 「提交容器註釋」 –a  「容器做者」   <容器id/ 容器名稱>    <新的容器名稱>


啓動新的 docker 容器  (後臺啓動 ,不顯示日誌信息)

docker  run –d     -p  1003:8080     <新建的容器名稱 >


// 給將要運行的 容器起一個名字 方便後邊的  日誌查看(*須要手動輸入,否則會報錯*)

                                                   從新命名容器名稱     將要運行的鏡像名稱/鏡像id  

docker run –itd   -p  10003:8080  --name changan    changan_tomcat 

    錯誤:

Unable to find image 'chagnan_tomcat:latest' locally
docker: Error response from daemon: pull access denied for chagnan_tomcat, repository does not exist or may require 'docker login'.

以上錯誤是在容器運行時已經存在運行的容器

      能夠詳細查看  已經運行 過的容器 列表  docker ps –a  

    刪除掉重複名稱的  docker  image     刪除命令  docker  rm   <容器名稱>


根據啓動的容器的名稱 docker ps 中的name 查看 容器的日誌信息   (查看日誌信息)

docker logs –f  --tail=100  upbeat_perlman

相關文章
相關標籤/搜索