參數--help:瞭解指定的 Docker 客戶端命令使用方法
1、運行一個web應用
在docker容器中運行一個 Python Flask 應用來運行一個web應用
docker pull training/webapp
docker run -d -P training/webapp python app.py
參數說明:
-d:讓容器在後臺運行
-P:將容器內部使用的網絡端口映射到我們使用的主機上
ps可見容器的端口0.0.0.0:32768->5000/tcp,Docker 開放了 5000 端口(默認 Python Flask 端口)映射到主機端口 32769 上。
瀏覽器訪問WEB應用。注意:使用宿主機IP是無法訪問的
問題和解決辦法:https://www.cnblogs.com/hypnus-ly/p/8683215.html
docker是運行在Linux上的,在Windows中運行docker,實際上還是在Windows下先安裝了一個Linux環境,然後在這個系統中運行的docker。也就是說,服務中使用的localhost指的是這個Linux環境的地址,而不是我們的宿主環境Windows。因此,要訪問WEB應用,需要找到該Linux環境的地址:
使用命令:docker-machine ip default
地址默認爲:192.168.99.100
使用瀏覽器:192.168.99.100:32759,訪問成功
2、定製web應用的訪問端口
docker run -d -p 5000:5000 training/webapp python app.py
將端口定在5000,使用瀏覽器:192.168.99.100:5000,訪問成功
3、網絡端口的快捷方式
docker port(ID或者名字) 可以查看容器的某個確定端口映射到宿主機的端口號
4、查看WEB應用程序日誌
docker logs [ID或者名字] 可以查看容器內部的標準輸出
參數-f:長時間查看輸出
docker logs -f focused_yonath
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
192.168.99.1 - - [10/Jul/2018 07:01:55] "GET / HTTP/1.1" 200 -
192.168.99.1 - - [10/Jul/2018 07:01:55] "GET /favicon.ico HTTP/1.1" 404 -
192.168.99.1 - - [10/Jul/2018 07:15:57] "GET / HTTP/1.1" 200 -
192.168.99.1 - - [10/Jul/2018 07:16:04] "GET / HTTP/1.1" 200 –
5、查看WEB應用程序容器的進程
docker inspect (ID或者名字)
6、停止WEB應用容器
docker stop (ID或者名字)
7、重啓WEB應用容器
docker start (ID或者名字)
8、查詢最後一次創建的容器
docker ps -l
9、移除WEB應用容器
docker rm (ID或者名字)
注意:刪除容器時,容器必須是停止狀態
10、刪除停止的容器
顯示停止的容器:docker ps -a
刪除容器:docker kill 容器
刪除所有已停止的容器:docker rm $(docker ps -a -q)