docker初识_docker 初识
容器化是不是僅僅只是新的虛擬化?
答案是不完全是。容器和虛擬機具有一些相似性,它們都是通過一個控制進程管理的隔離環境(分別是容器管理器和虛擬機監控程序),但兩者之間的主要區別是,對于每一個虛擬機,運行的是一個完整的組件堆?!獜牟僮飨到y到應用服務器,以及仿真的虛擬硬件包括網絡組件、CPU和內存。
對于容器來講,它們運行在更為完全隔離的沙盒(類似隔離沙箱)中,出現在每個容器里的僅僅是操作系統的最小內核,共享了底層系統的資源。容器化的最大優勢在于對于相同的硬件占用空間更小,可以比虛擬機運行更多的實例。容器也有一些關鍵的限制:最大的一個是容器只能運行在基于Linux的操作系統上面(內核隔離是Linux的特定技術)。
與這一限制相關的就是Docker——目前最流行的容器服務提供系統——不能直接運行在Mac或者Windows系統上,因為它們不是Linux,替代方案就是為了運行Docker,你需要使用VirtualBox啟動一個Linux虛擬機,接著在虛擬機里運行Docker。幸運的是,它絕大多數是由Docker ToolBox來管理的(原名Boot2Docker)。
Docker是一個開源的引擎,可以輕松的為任何應用創建一個輕量級的、可移植的、自給自足的容器。開發者在筆記本上編譯測試通過的容器可以批量地在生產環境中部署,包括VMs(虛擬機)、bare metal、OpenStack 集群和其他的基礎應用平臺。
Docker通常用于如下場景:
web應用的自動化打包和發布;
自動化測試和持續集成、發布;
在服務型環境中部署和調整數據庫或其他的后臺應用;
從頭編譯或者擴展現有的OpenShift或Cloud Foundry平臺來搭建自己的PaaS環境。
Docker級別的命令:
docker ps
該命令將會列出所有運行的容器,顯示的信息包括它們的ID、名字、基礎鏡像名字和端口映射信息等。
docker build
該命令用來定義一個鏡像——通過處理Dockerfile來創建一個新的鏡像,我們將用這個命令來構建我們的微服務鏡像。
docker pull[鏡像名字]
該命令從遠程Repository拉取鏡像并且存儲在本地。
docker run
該命令將基于一個本地或者遠程Repository(比如Docker Hub)啟動一個容器,我們將會相當多地探究這個命令。
docker push
該命令推送一個構建好的鏡像到一個Repository,通常是Docker Hub。
容器特定的命令
這些命令使用容器ID或者名字作為一個參數:
docker status [容器名字/ID][容器名字/ID]
這個命令將顯示指定的每一個容器的當前負載,比如CPU占用率、內存使用率以及網絡流量等。
docker logs [-f][容器名字/ID]
該命令顯示容器的最新的日志,-f選項就好比Shell終端中的“tail -f”中的-f選項。
docker inspect [容器名字/ID]
該命令將容器的所有配置信息以JSON的格式轉儲出來顯示。
docker port [容器名字/ID]
該命令顯示容器與宿主機之間的所有端口映射信息。
docker exec [-i][-t][容器名字/ID]
該命令將在目標容器上執行一條命令(-i表明以交互方式運行,-t表明以偽TTY終端運行),這個命令常用來獲得一個容器終端Shell:?docker exec -it [容器名字/ID]sh
安裝ubuntu維護的版本:##
$ sudo apt-get install docker.io
$source/ect/bash_completion.d/docker.io
啟動容器
dockerrunIMAGE[COMMAND][ARG…]run在新容器中執行命令執行單次操作的容器(一次只執行一個命令)例如: docker run ubuntu echo ‘hello world’
運行ubuntu 鏡像 輸出’hello world ‘
docker部分常用命令
本篇整理比較亂,過一段時間會整理一個版本再次發表
總結
以上是生活随笔為你收集整理的docker初识_docker 初识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python的基本语法数据类型有那些_p
- 下一篇: vue点击按钮之后置成不可用_2020.