CentOs7下docker簡單實踐,安裝nginx

真正應用docker來構建部署項目有點晚了, 最近正好有新環境嘗試應用了一下, docker應用了幾年也已經很成熟了,網上資料很多,稍微記錄一下.

Docker的理念就是一次構建,隨處運行. Build, Ship, and Run Your Applications Everywhere

在最新官網看到的這句話覺得很溫暖, we work to make the developers’ lives easier because we’re developers too.

大意是:我們爲了讓開發者活得更輕鬆而工作, 因爲我們也是開發者.  

引自百度百科:

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

docker相關概念這篇文章也講得很清晰 https://www.cnblogs.com/duguxiaobiao/p/10465602.html

核心概念感覺有必要抄來重複一下:

  • 容器

    容器是鏡像的一個實例,是一個小型的運行時環境,比如一般是小型的linux環境(基於linux內核的小型環境),用java代碼比喻就是:容器是一個類的實例對象,比如 Person 小明 = new Person(); Person就是一個模板,也是要給鏡像

  • 鏡像

    鏡像是保存在鏡像倉庫中的,pull鏡像,相當於 將鏡像實例化成容器後部署在自己的環境中,用java來說就是一個類對象

  • 倉庫

    倉庫是用來保存多個註冊倉庫的,每個註冊倉庫中保存了不同的鏡像image文件

說來慚愧, 擁抱docker有點晚了,公司還停留在使用虛擬機來部署的年代, 也不是說虛擬機不好, 對比起來確實是資源利用率比較低了, 尤其對於小企業來說。  個人理解docker的概念跟java虛擬機概念類似,是一個更廣義的虛擬抽象,不僅只能跑java應用,只要你能弄成鏡像塞進去,都能跑,純粹一己之見,哈哈。閒話不多說,安裝一下

安裝

以下都基於能聯網的情況下進行,對於內網服務器沒互聯網環境的,就需要手動下載安裝包和依賴了。

本次主機是centos7.6

引用阿里的yum鏡像源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum clean all
yum makecache fast
yum -y install docker-ce

就安裝完了。

接下來修改一下docker默認鏡像和容器在系統中的磁盤目錄

# Docker默認的鏡像和容器存儲位置在/var/lib/docker中

# 修改docker.service文件 
vim /lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd --graph=/Raid5App01/Docker --storage-driver=overlay --registry-mirror=https://s42tycw4.mirror.aliyuncs.com

# --graph=/Raid5App01/Docker:docker新的存儲位置
# --storage-driver=overlay2 : 當前docker所使用的存儲驅動 (存儲驅動不改也會變成overlay2)
# --registry-mirror=https://s42tycw4.mirror.aliyuncs.com : docker鏡像拉取地址

systemctl daemon-reload

systemctl restart docker

# 查看docker信息
docker info

阿里雲官網的教程部分無效,找不到鏡像配置文件了。

實踐

裝個nginx嘗試下 

搜索鏡像:docker search nginx

安裝最新的版本:docker pull nginx:latest

查看鏡像:docker images

創建容器(對象):docker run --name nginx-dxx -p 8080:80 -d nginx

--name nginx-dxx:容器名稱。
-p 8080:80: 端口進行映射,將本地 8080 端口映射到容器內部的 80 端口。
-d nginx: 設置容器在在後臺一直運行。

查看容器:docker ps

訪問: 

其他常規命令  docker ps:查看運行中的容器,docker ps -a 查看所有容器,包含停止的。其他還有如 啓動,停止容器, docker start nginx, docker stop nginx.

 

本次小結先到此,只是入門皮毛,距離自動化運維部署不遠了,哈哈。

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