Docker 概念、安裝與基礎命令

什麼是 Docker

Docker是一個開源的引擎,能夠輕鬆的爲任何應用建立一個輕量級的、可移植的、自給自足的容器。開發者在筆記本上編譯測試經過的容器能夠批量地在生產環境中部署,包括VMs(虛擬機)、bare metal、OpenStack 集羣和其餘的基礎應用平臺。 該段介紹引自 Docker中文html

**一些應用場景:**騰訊雲服務器轉移至阿里雲服務器,這每每須要從新部署和安裝不少東西,例如:Nginx,MongoDB(MySQL),Nodejs等等。若是使用了 Docker 的話,則能夠經過容器打包應用,在新的服務器上啓動須要的容器便可。輕鬆實現服務器的轉移。mysql

若是概念仍是比較模糊,能夠看看知乎的解釋:如何通俗解釋Docker是什麼?nginx

容器,鏡像,倉庫

舉個栗子:假如我有一抽屜的的系統光盤,裏面有 WinXp,Win7,Win8,Win10,CentOS6.5,Centos7 等等,每一個光盤裝有一個系統,還有一臺裝有 Win10 系統的 PC 機。那麼在這個栗子當中,其中的比喻關係以下: 鏡像 --> 某個系統盤 倉庫 --> 一抽屜的系統盤 容器 --> PC 機(物理硬件) 每一個容器內運行一個應用,不一樣的容器相互隔離,容器之間也能夠創建通訊機制。容器的建立和中止都是很是迅速的,所須要的資源也遠遠低於虛擬機。sql

Centos7 安裝 Docker

個人環境是騰訊雲中的 CentOS7 服務器。docker

yum install docker
複製代碼

Docker RPM 包已經包含在 CentOS-Extra 倉庫中,因此咱們能夠直接使用 yum 安裝 啓動 Docker:bash

service docker start
複製代碼

Docker 基礎命令##

docker version  
複製代碼

查看 docker 的版本信息服務器

docker images  
複製代碼

查看當前的鏡像信息微信

docker ps
複製代碼

查看當前運行中的容器測試

docker ps -a  
複製代碼

查看全部的容器阿里雲

**鏡像的增刪改查:**

docker pull hello-world
複製代碼

從Docker hub的Registry下載一個名爲 hello-world 的鏡像

docker run hello-world 
複製代碼

在容器中跑名爲 hello-world 的鏡像

docker rmi hello-world
複製代碼

在本地中刪除一個名爲 hello-world 的鏡像

docker rmi 123456
複製代碼

在本地中刪除一個 id 爲 123456 的鏡像

其實這也算是新建鏡像了

docker commit -m "describe new image" -a "author message" containerId newImageName
複製代碼

-m 鏡像描述 -a 做者信息 containerId 容器 Id newImageName 新的鏡像名稱

docker search image_name
例如:docker search mysql
複製代碼

搜索遠程倉庫中的共享鏡像,默認爲 Docker Hub。以上代碼爲搜索 mysql 的鏡像。

實例演示:啓動一個 Nginx 服務

1. docker search nginx
 2. docker pull nginx
 3. docker images
 4. docker run -p 8080:80 -d nginx

複製代碼
  1. 從倉庫中搜索一下 Nginx ,查看相關信息(可選)
  2. 從倉庫中下載 Nginx 鏡像
  3. 查看本地的 Nginx 鏡像(可選)
  4. 啓動 Nginx 鏡像,命令代碼中的參數解釋以下: -p 8080:80 --> 指定端口號,8080 爲本機端口號,80 爲容器端口號

啓動以後能夠經過 http://ip_address:8080 就能夠訪問到剛剛啓動的 Nginx

我這邊是雲端服務器,因此這邊抹掉了個人 ip 地址,若是你是本機訪問,可直接訪問 http:localhost:8080 。簡單幾行代碼就運行了 Nginx 是否是很方便?

參考文章: 大白話Docker入門(一) Docker 使用指南 (一)—— 基本操做


關注微信公衆號,回覆【docker資源】,獲取 docker 初級視頻教程

zone_qrcode.jpg
相關文章
相關標籤/搜索