第一本docker書 學習筆記(二)

#安裝docker的先決條件

運行64位CPU構架的計算機(docker目前不支持32位的cpu)docker

  • 運行LUFSinux3.8或者更高版本內核 
  • 內核必須支持一種合適的存儲驅動,例如:

    device Managershell

    AUFSubuntu

    vfsbash

    默認存儲驅動一般是devices mapperapp

    ...spa

  • 內核必須支持並開啓cgroup和命名空間(namespace)功能

 

# 運行第一個容器

>>> sudo docker run -i -t ubuntu /bin/bash3d

-i  保證容器中STBIN是開啓的,儘管並無附着到容器中,rest

-t  則是,爲建立的容器分配一個僞tty終端日誌

若要在命令下建立一個咱們能與之進行交互的容器,而不是運行後臺服務的容器。則這兩個參數是最基本的參數了blog

 

>>> hostname 

查看容器的主機名

>>> exit

退出

 

# 容器命名

--name  

docker run --name botoo_container  -i -t ubuntu /bin/bash

上述命令建立一個 名爲botoo_container的容器;

容器的命名必須是惟一的。

 

#從新啓動已經中止的容器

>>> sudo  docker start  botoo_container 

或者 

>>> sudo  docker start 容器ID

啓動已經中止的容器

 

#附着到容器上

當容器從新啓動後,能夠用dockcer attach命令 ,從新附着到該容器的會話上。

>>> docker attach   容器nane

>>>  docker attach  容器ID

 退出shell ,容器也中止

 

#建立守護式容器

除了上述的交互式運行容器,也能夠建立長期運行的容器。守護式容器,沒交互式會話,很是適合運行應用程序和服務。

>>> sudo docker run  --name  daemon_dave -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"

咱們使用一個-d參數,docker就會將容器放到後臺運行。 

在命令裏使用一個 while循環,該循環一直打印 hello world,直到容器中止運行;

>>> sudo  docker ps 

能夠看見該容器

 

#容器在內部都幹些什麼

獲取守護容器的日誌

咱們也能夠使用 -f 命令 監控docker的日誌,和 tail -f 命令類似。

>>> docker  logs   --tail  10 daemon_dave

獲取日誌最後10行

 >>> docker  logs   -ft   daemon_dave

 

...  .... ....

 

#查看容器內的進程

>>> docker top 容器名

能夠看容器內全部的進程;

 

#在容器內部運行進程

 >>> docker  exece -d daemon_dave touch /etc/new_config_file

在容器中運行後臺任務

>>> docker exec -t -i daemon_dave /bin/bash

在容器內運行交互命令

 

#中止守護容器

>>> docker stop 容器名

>>> docker stop  容器ID

 

#自動重啓容器

>>>   docker run  ---restart=always --name daemon_dave -d ubuntu /bin/sh -c "while  true;do echo hello world; slepp 1;done"

-- restart 設置爲always ,不管容器的退出代碼是什麼。docker 都會自動重啓該容器。

除了always ,還能夠設置爲 on -failure,這樣,只有當容器的退出代碼爲非0的時候,纔會自動重啓。

on-failure 還接受一個重啓次數參數,

--restart=on-failure:5

最多容許重啓5次;

 

 

#深刻容器

使用docker inspect 獲取更多容器信息

 

 

 #刪除容器

運行中的容器是沒法刪除的,必須先使其stop 

再刪除, docker rm 容器ID

相關文章
相關標籤/搜索