Docker Container 介紹
Jufeng Wu, 07 August 2019
docker 的container 是跑在image之上,所以要使用docker必須要先產生container
此外,container有兩種狀態,up 和exit,up為已經呼叫起來的狀態,exit為沒有被呼叫起來
這次就介紹一些常用的container命令吧!
- 顯示所有的container
docler ps -a
- 產生新的container
docker run <options> <image_name> <command> <args> ex: docker run -it --rm -p 6080:80 docker_ros_melodic_vnc_techman docler run -it docker_ros_melodic ./bin/bash docker run -it -v /home/leowu/ros2:/root/ros2 -p 6080:80 ros_env:ver1
其中,一些常用的options如下: a. -it : interaction and terminal b. -rm: remove after exit c. -p: set port d. -v: 讓現有資料夾和container的資料夾共用,A:B的意思中A是指本機端的資料夾B是此container內的資料夾
- 呼叫起現有的container
docker start <container_name>
- 執行現有的container
docker exec <options> <container_id> <command> <args>
這裡的 options 和 arg 以及 command和 run是一樣的
- 從terminal中離開contianer: 只需要打exit就可以了
- 關起contianer:
docker stop <container_id>
- 顯示container和image不一樣的地方
docker diff <container_name_or_container_id>
- 將container 打包成一個image
docker commit <option> <container_id> <image_name>:<image_tag>
其中有幾點要注意
a.用commit 的話會把所有東西,一起打包
b.option的指令如下:
-a: add author
-c use docker file to commit
-m: add memo
-p: suspend container when commit - 幫container重新命名
docker rename old_container_name new_container_name