開發需知 - Docker容器

概述

Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的鏡像中,然後發佈到任何流行的Linux或Windows 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口。

                          

 

安裝Docker

centos7爲例

#安裝需要的軟件包 :yum install -y yum-utils device-mapper-persistent-data lvm2

#設置yum源 :yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

#安裝docker:sudo yum install docker

#啓動docker並讓它隨系統自啓
sudo service docker start 
sudo chkconfig docker on

組成部分

Docker Client(客戶端)

  • docker客戶端是用戶與docker進行交互的主要方式,當在終端輸入docker命令時,對應的就會在服務端產生對應的作用,並返回結果給客戶端。

Docker Server (服務端)

  • docker daemon就是docker的服務端,它負責監聽docker api的請求並管理docker對象,如鏡像、容器、網絡、數據卷等

Docker Registries

  • 俗稱docker倉庫,專門用於儲存鏡像的雲服務環境,docker hub就是一個公有的存放鏡像的地方,類似GitHub儲存代碼文件。

Docker Objects (對象):

  • 鏡像:一個docker的可執行文件,其中包括運行應用程序所需的所有代碼內容、依賴庫、環境變量和配置文件
  • 容器:鏡像被運行起來後的實例
  • 網絡:外部或者容器間如何互相訪問的網絡方式,如host模式、bridge模式等
  • 數據卷:容器與宿主機之間、容器與容器之間共享存儲方式,類似虛擬機與主機之間的共享文件目錄

docker基本使用

常用命令

docker環境信息 -> info、version
鏡像管理 -> build、images、import、load、rmi、save、tag、commit
容器運維操作 -> attach、export、inspect、port、ps、rename、stats、top、wait、cp、diff、update
容器生命週期 start、stop、restart、pause、rm、run、unpause、kill、create
鏡像倉庫命令 -> login、logout、pull、push、search

查看API文檔

docker <management Commands> --help

搜索需要的鏡像

下載鏡像到docker本地服務器中

配置國內鏡像源,提高拉取速度
echo {"registry-mirrors": ["http://hub-mirror.c.163.com"]} > /etc/docker/daemon.json
下載centos鏡像
docker pull centos

 

docker的簡單使用

顯示下載鏡像

測試創建容器

開啓容器,運行一個後臺終端

docker run -itd centos /bin/bash
#options解釋
-i  ->  Allocate a pseudo-TTY
-t ->  Keep STDIN open even if not attached
-d -> Run container in background and print container ID

注意:容器之間是互不干擾的

通過容器的修改文件,生成一個新的鏡像

提交到docker hub,線上保存

docker login -u username -p password
docker commit image

 

對於docker用處和作用,目前個人知道的有兩個,一是做集羣處理,另一個就是創建自己的獨立開發環境容器,隨時可以用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章