Docker Command-line reference
docker version
docker info
docker container -help (container可以進行那些操作)
docker container run <image name>
docker container run -d -p 80:80 --name <webhost> <image name>
--name <webhost> 命名
--detach,--publish
docker container ps (當前運行容器)
docker container ls (同上)
docker container ps -a (所有容器包括停止)
docker container ls -a (同上)
docker container stop <name or ID> docker container rm <name or ID>
docker container rm <name or ID> -f (運行中停止刪除)
docker image ls (docker 有幾個image檔)
docker image rm [options]{image[image]}
docker container stop $(docker container ls -q) 批次停止
docker container rm $(docker container ls -aq) 批次刪除
docker system prune -f 刪除以停止的容器
docker image prune -f 刪除未使用image
創建一個容器並進入互動式模式
docker container run -it <name or ID> sh
已經背景運行裡呼叫command
-d 背景啟動
docker container run -d <name or ID>
docker container exec -it <name or ID> sh
從dockerhub上拉取 image
docker pull nginx
docker pull nginx:1.20.0
從Quay上拉取 image
docker pull quay.io/bitnami/nginx
image 的獲取
- pull from registry (online) 從registry拉取
- public(公有)
- private(私有)
- build from Dockerfile (online) 從Dockerfile構建
- load from file (offline) 文件導入 (離線)
Dockerfile 使用比較複雜
Python Flask
步驟一 :兩個檔案放在同一資料夾
app.py
from flask import Flask
app = Flask(__name__)
@app.route('/')def hello_world(): return 'Hello, World!'
Dockerfile 檔名
FROM python:3.9.5-slimRUN pip install flaskWORKDIR /srcENV FLASK=app.pyCOPY app.py /src/app.pyEXPOSE 5000CMD ["flask", "run", "-h", "0.0.0.0"]
步驟二 :不同方式呼叫網頁
python 方式呼叫網頁
建立虛擬環境python -m venv env
.\env\Scripts\activate #激活環境pip install flask$env:FLASK_APP="app.py" #powershell 設定環境變數
flask run #執行後就能在網頁看到輸出
http://127.0.0.1:5000/
docker 方式呼叫網頁
docker build -t flask-demo .
docker container run -d -p 5000:5000 flask-demohttp://127.0.0.1:5000/
0 意見:
張貼留言