1. 程式人生 > >centos下Docker環境搭建(一)

centos下Docker環境搭建(一)

Docker是一個能夠把開發的應用程式自動部署到容器的開源引擎,基於客戶端-伺服器架構c/s,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。

Docker 由下面這些組成:1. Docker 伺服器守護程式(server daemon),用於管理所有的容器。2. Docker 命令列客戶端,用於控制伺服器守護程式。3. Docker 映象:查詢和瀏覽 docker 容器映象。

準備工作:

1.下載VM和centos7映象
2.安裝centos7
3.cd 進入vi /etc/sysconfig/network-scripts/ifcfg-eno**** 修改ip地址
4.onboot 改為 yes
  在最後一行新增:
  IPADDR=自己主機ipv6地址

  GATWAY=自己主機的閘道器地址  修改完成後重啟網路
  service network restart
5.安裝ifconfig功能
  yum install net-tools.x86_646.xshell連線vm下的centos

開始安裝Docker:
1.下載docker(可以省略)
rpm -Uvh http://dl.Fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm2.安裝dockeryum -y install docker-io 

 


3.啟動dockerservice docker start4.將docker加入開機啟動

chkconfig docker on

基本資訊檢視

docker version檢視docker的版本號,包括客戶端、服務端、依賴的Go

docker info 檢視系統(docker)層面資訊,包括管理的images, containers數等

映象的獲取與容器的使用

映象可以看作是包含有某些軟體的容器系統,比如centos就是一個官方的基礎映象,很多映象都是基於這個映象“衍生”,該映象包含基本的centos系統

1搜尋可用的centos的docker映象

docker search <image>:在docker index中搜索image

docker search centos

這樣就可以搜尋出在Docker Hub上所有帶centos的公共的可用映象

 

2)下載centos映象(拉取映象)
docker pull centos:latest

檢視映象

docker images 列出images

docker images -a :列出所有的images(包含歷史)

docker images --tree :顯示映象的所有層(layer)

docker rmi  <image ID> 刪除一個或多個image

 


3啟動一個容器

docker run -it centos /bin/bash

Docker允許啟動一個偽tty終端,使用互動執行的方式啟動一個容器,所用到的引數為:-t -i

centos為基礎映象,首先Docker會檢查本地是否有centos映象,如果沒有就會連線官方維護的Docker Hub Regustry檢視,一旦有就會下載該映象並將其儲存在本地宿主機中。

容器命名(名稱必須唯一)

用上述方法啟動容器,Docker會為我們建立的每一個容器自動生成一個隨機的名字,如果想自己命名,可以用--name標誌來實現。

 sudo docker run --name Luffy -it centos /bin/bash

 

檢視容器

docker ps 列出當前所有正在執行的containerdocker ps -l 列出最近一次啟動的container docker ps -a 列出所有的container(包含歷史,即執行過的containerdocker ps -q 列出最近一次執行的container ID

退出

exit

輸入exit就可以返回到centos宿主機的命令列提示符了,一旦退出容器,/bin/bash命令也就結束了,容器也隨之停止了執行。

再次啟動容器

 docker start/stop/restart <container> 開啟/停止/重啟container docker start [container_id] 再次執行某個container (包括歷史container

docker run -i -t <image> /bin/bash :使用image建立container並進入互動模式, login shell/bin/bashdocker run -i -t -p <host_port:contain_port>:對映 HOST 埠到容器,方便外部訪問容器內服務,host_port 可以省略,省略表示把 container_port 對映到一個動態埠。    注:使用start是啟動已經建立過得container,使用run則通過image開啟一個新的container

刪除容器

 docker rm <container...> :刪除一個或多個containerdocker rm `docker ps -a -q` :刪除所有的containerdocker ps -a -q | xargs docker rm :同上, 刪除所有的container

進入容器

docker attach ****(容器ID或名)

連線一個正在執行的container例項(即例項必須為start狀態,可以多個視窗同時attach 一個container例項)容器的主機名就是該容器的ID

 

檢視ip主機配置