前言
- 新買了一臺服務器(阿里雲學生雞配置低的要命,但勝在便宜,適合折騰),以前買的服務器都是裝可視化面板去管理的,最近工作中接觸
Docker
比較多,所以寫下這篇文章去記錄。 - 先簡單講一下什麼是
Docker
?
Docker 是一個開源的應用容器引擎,基於 Go 語言 並遵從Apache2.0協議開源。
Docker 可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然後發佈到任何流行的 Linux 機器上,也可以實現虛擬化。
容器是完全使用沙箱機制,相互之間不會有任何接口(類似 iPhone 的 app),更重要的是容器性能開銷極低。
Docker 從 17.03 版本之後分爲 CE(Community Edition: 社區版) 和 EE(Enterprise Edition: 企業版),我們用社區版就可以了。
Docker
的優點
1、簡化程序:
Docker 讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後發佈到任何流行的 Linux 機器上,便可以實現虛擬化。Docker改變了虛擬化的方式,使開發者可以直接將自己的成果放入Docker中進行管理。方便快捷已經是 Docker的最大優勢,過去需要用數天乃至數週的 任務,在Docker容器的處理下,只需要數秒就能完成。
2、避免選擇恐懼症:
如果你有選擇恐懼症,還是資深患者。Docker 幫你 打包你的糾結!比如 Docker 鏡像;Docker 鏡像中包含了運行環境和配置,所以 Docker 可以簡化部署多種應用實例工作。比如 Web 應用、後臺應用、數據庫應用、大數據應用比如 Hadoop 集羣、消息隊列等等都可以打包成一個鏡像部署。
3、節省開支:
一方面,雲計算時代到來,使開發者不必爲了追求效果而配置高額的硬件,Docker 改變了高性能必然高價格的思維定勢。Docker 與雲的結合,讓雲空間得到更充分的利用。不僅解決了硬件管理的問題,也改變了虛擬化的方式。
Centos Docker 安裝
- 前提條件:
Centos發行版本
,CentOS 6.5 (64-bit) 或更高的版本
- 使用
yum
安裝Docker
- 首先查看系統的
yum
版本以及centos
的版本。滿足要求
# yum-v
# uname -r
- 安裝必要的系統工具,執行以下命令。
# yum install -y yum-utils device-mapper-persistent-data lvm2
3. 添加軟件源信息
# yum-config-manager --add-repohttp://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4. 更新 yum 緩存
# yum makecache fast
- 安裝 Docker-ce
yum -y install docker-ce
6. 啓動 Docker 後臺服務
systemctl start docker
- 測試運行 hello-world
docker run hello-world
Docker容器使用
- 使用
docker
命令查看所有命令
# docker
- 運行一個
web
應用
docker pull training/webapp # 載入鏡像
docker run -d -P training/webapp python app.py
-d:讓容器在後臺運行。
-P:將容器內部使用的網絡端口映射到我們使用的主機上。
- 查看當前運行的容器
docker ps
- 查看 WEB 應用程序日誌
docker logs -f 809a #809a是應用的id前幾位
- 停止 WEB 應用容器
docker stop 809a #809a是應用的id前幾位
- 重啓WEB應用容器
docker restart 809a #809a是應用的id前幾位
- 移除WEB應用容器
docker rm 809a #809a是應用的id前幾位
Docker 安裝 Nginx
- 拉取鏡像
docker pull nginx
- 運行
nginx
docker run --name test -p 8081:80 -d nginx
test 容器名稱。
the -d設置容器在在後臺一直運行。
the -p 端口進行映射,將本地 8081 端口映射到容器內部的 80 端口。
補充
- 文章首發於重頭開始學Docker