原文連結:https://blog.csdn.net/forezp/article/details/80098675
本系列教程翻譯於docker文件,文件地址:https://docs.docker.com/ ,由於某些原因,docker官方文件通常都是打不開,如果打不開,安裝完docker之後,可以拉取docker文件的映象在本地跑。安裝docker完成後,輸入一下命令:
docker run -it -d -p 4000:4000 docs/docker.github.io:latest
在瀏覽器上開啟localhost:4000就可以看docker 的文件了。
本系列教程的翻譯於2018年4月份,當時的docker版本為V18.03
Docker的相關概念
Docker 是一個為開發者和運維者去開發、釋出和在容器中執行應用的平臺。使用Linux容器來部署應用程式被稱為容器化。 容器不是新的概念,它的優勢在於很容易釋出一個應用。
容器化變得非常的流行,因為容器化具有以下的優點:
- 靈活:即使最複雜的應用也能夠被容器化。
- 輕量:容器最大化利用和分享主機的核心。
- 可互換:你可以即時部署更新和升級應用。
- 便捷:你可以在本地構建應用,並部署到容器雲,並在任何地方執行。
- 可擴充套件: 你可以增加和自動分發容器的個數。
- 可堆疊:您可以垂直堆疊服務並即時堆疊服務。
映象和容器
容器是通過執行一個映象來啟動的。映象是一個可執行程式包,其中包含執行應用程式所需的所有內容 - 程式碼,執行時庫,環境變數和配置檔案。
容器是一個映象的執行時例項,容器是一個在記憶體中執行的映象(這就是,一個映象有了狀態,或者一個使用者程式)。你可以通過像linux環境敲打一個docker ps來檢視一系列正在執行的容器。
容器和虛擬機器
一個容器是在linux服務本地執行,並和其他的容器共享主機的核心。它執行在一個獨立的程式中,相對於其他可執行的程式(比如虛擬機器)來說,容器的記憶體佔用空間更小,更加的輕量化。
相比之下,虛擬機器(VM)執行一個完整的“客戶”作業系統,通過虛擬機器管理程式虛擬訪問主機資源。 一般來說,虛擬機器提供的環境比大多數應用程式需要的資源更多。
準備你的Docker環境
安裝docker請看官方網站。
centos安裝:
yum -y install docker-io
啟動:
service docker start
更多系統的安裝請看官網。
測試Docker版本
- 執行 docker --version 命令,並確保你安裝的Dokcer版本支援改命令:
docker --version
Docker version 17.12.0-ce, build c97c6d6
複製程式碼
- 執行docker info (docker version 沒有--)命令,檢視更多的docker的安裝資訊。
docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 17.12.0-ce
Storage Driver: overlay2
...
複製程式碼
測試docker安裝成功
- 執行一個簡單的docker映象(hello world)來測試docker 安裝成功了。
docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
ca4f61b1923c: Pull complete
Digest: sha256:ca0eeb6fb05351dfc8759c20733c91def84cb8007aa89a5bf606bc8b315b9fc7
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
複製程式碼
2.列出在你機器上下載的hello world映象。
docker image ls
複製程式碼
- 列出退出的hello-world容器(由映象產生)。如果它仍在執行,則不需要--all選項:
docker container ls --all
CONTAINER ID IMAGE COMMAND CREATED STATUS
54f4984ed6a8 hello-world "/hello" 20 seconds ago Exited (0) 19 seconds ago
複製程式碼
命令回顧
## List Docker CLI commands
docker
docker container --help
## Display Docker version and info
docker --version
docker version
docker info
## Execute Docker image
docker run hello-world
## List Docker images
docker image ls
## List Docker containers (running, all, all in quiet mode)
docker container ls
docker container ls --all
docker container ls -aq
複製程式碼
總結
使用Docker,擴充套件應用程式的過程就是啟動新的可執行檔案,而不是執行繁重的VM主機。