# Docker練習 ## Dockerfile  ### CMD注意事項 1. Dockerfile中只能有一行CMD,若有多行CMD,則只有最後一行會生效。 2. 若在建立Container時有帶執行的命令,則CMD的指令會被蓋掉。 例如:單純執行docker run 時,CMD所定義的指令一樣會被執行,但當執行docker run bash時,因為多了bash指令,Container就會執行bash,而原本CMD中定義的值就會被覆蓋 ## 建立image  repository 為dockerimage_kuanru tag為latest ## 建立container並執行  利用volume將本機的目錄映射到container中 偽輸入终端交互(-it)模式啟動一個容器以免docker自動關閉 ## 利用attach進入 #### 退出後會關閉container   ### Docker 啟動容器後馬上又自動關閉 #### 退出原因 1. docker容器執行需要有一個前台行程(process), 如果没有前台行程執行,容器認為空閒,就會自行退出 2. 容器執行的命令如果不是那些一直掛起的命令( 比如執行top、tail等),就是會自動退出 3. docker的機制問題 #### 解決方法 1. 增加-it 参數交互執行,且增加-d參數後台執行,這樣就能啟動一個一直停留在後台執行的容器了。 2. docker run -dit ubuntu /bin/bash ## 利用exec進入 #### 退出後container不會停止運作  ## curl存圖片  ## 利用flask建立伺服器  ## 執行結果 
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up