docker是個什麼東西,幹什麼用?

2020-12-13 跟我一起學編程

docker 是啥?

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

docker可以在什麼情況下使用

1.web應用自動化打包發布,像tomcat應用的發布。

2.自動化測試和持續集成、發布

3.在服務型環境中部署和調整資料庫或其他的後臺應用

4.搭建paas環境

使用docker有什麼好處

1.簡單易操作,簡化了以往複雜的應用程式安裝步驟,使用docker會變得非常簡便。

2.可兼容多種應用,Web 應用、後臺應用、資料庫應用、大數據應用比如 Hadoop 集群、消息隊列等等都可以打包成鏡像部署。

3.省錢 docker結合雲可以做到高性能低價格

特別之處:Docker是基於Linux 64bit的,在32位機器上無法運行。

相關焦點

  • docker 門外初體驗——docker 安裝(一)
    文章目錄系列文章目錄前言一、docker是什麼?
  • docker-4:mac使用docker部署開發用rocketmq
    目錄:(1).mac本地docker化rocketmq(2).mac本地docker化rocketmq-console(3).測試(1).mac本地docker化rocketmq現在官方rocketmq-docker:git clone https://github.com/apache/rocketmq-docker
  • Docker問答錄系列——Docker引擎相關問題(一)
    https://hub.docker.com/explore/所有的官方鏡像都有 Dockerfile,以及在github上有全部生成鏡像的配套文件,遵循了Dockerfile的最佳實踐,這些也是很好地學習資料。另外,在 YouTube 的 Docker 官方頻道下有幾百個視頻講座,從初級到高級用戶都能從裡面學到很多東西。
  • 宋寶華:Docker 最初的2小時(Docker從入門到入門)
    本人反對暴風驟雨式多管齊下狂轟濫炸的學習方式,提倡迭代學習法,就是先知道怎麼玩,有個感性認識,再深入學習高級用法,深層原理,一輪輪迭代。堅決反對一上來就搞幾百頁厚的東西把人腦子弄亂。KVM, Virtualbox, Vmware是虛擬出機器,讓每個實例看到一個單獨的機器;而Docker是虛擬出作業系統,實現應用之間的隔離,讓各個應用覺得自己有一個自己的作業系統,而且彼此之間隔離。
  • Docker是什麼?有什麼用途?及理論知識詳細說明
    打開APP Docker是什麼?有什麼用途?比如,你在本地用Python開發網站後臺,開發測試完成後,就可以將Python3及其依賴包、Flask及其各種插件、Mysql、Nginx等打包到一個容器中,然後部署到任意你想部署到的環境。 Docker官方文檔比較全,建議讀一下官方文檔。
  • 巧用Docker Volume:數據備份的新潮流!
    相信大家對上面這個可愛的卡通logo一定不會陌生,如果您還不知道什麼是Docker 的話,可以先閱讀下我的另一篇文章:走進docker的世界之入門篇預備知識Docker Volume這裡使用docker全家桶之docker registry , docker倉庫的搭建可以參考:Docker 私有倉庫搭建因為我比較窮(沒錢買伺服器做docker倉庫),所以這裡為了方便直接用某雲的免費
  • 什麼是Docker?看這一篇乾貨文章就夠了!
    我們知道作業系統運行起來是需要佔用很多資源的,大家對此肯定深有體會,剛裝好的系統還什麼都沒有部署,單純的作業系統其磁碟佔用至少幾十G起步,內存要幾個G起步。假設我有一臺機器,16G內存,需要部署三個應用,那麼使用虛擬機技術可以這樣劃分:在這臺機器上開啟三個虛擬機,每個虛擬機上部署一個應用,其中VM1佔用2G內存,VM2佔用1G內存,VM3佔用了4G內存。
  • docker的/var/run/docker.sock參數
    向Docker Daemon發送請求為了驗證Docker Daemon可以通過/var/run/docker.sock接收請求,我們用curl命令來驗證,測試環境如下:作業系統:CentOS Linux release 7.6.1810接下來開始動手驗證:執行docker image
  • 用Docker部署SpringBoot應用程式
    你需要的是:Java 8+:用SDKMAN或直接來自AdoptOpenJDKDocker:我推薦Docker Desktop免費的Okta developer account稍後提供更多信息創建一個SpringBoot應用程式你會用Docker的幫助下生成SpringBoot項目HTTPie,一個簡單的命令行HTTP客戶機。
  • 理解docker鏡像與容器
    使用下面命令查看本地鏡像的信息docker images有一個問題:為什麼docker下載的鏡像只有131.3MB,而通常我們在虛擬機中安裝ubuntu的鏡像一般都有3個G多?同樣的道理相同的內核也可以對應不同的發行版,docker的鏡像就是利用了這個技術。使用docker pull ubuntu:15.04命令下載鏡像時系統會出現這樣的消息給人的第一感覺就是鏡像並不是鐵板一塊,好像是分成4個部分,一個一個的下載。
  • 雲計算核心技術Docker教程:dockerignore文件介紹
    在docker CLI將上下文發送到docker守護程序之前,它會在上下文的根目錄中查找名為.dockerignore的文件。如果此文件存在,則CLI會修改上下文以排除與其中的模式匹配的文件和目錄。CLI將.dockerignore文件解釋為以換行符分隔的模式列表,類似於Unix Shell的文件組。為了匹配,上下文的根被認為是工作目錄和根目錄。例如,路徑 /foo/bar和foo/bar兩個排除命名的文件或目錄bar 的foo子目錄PATH或位於Git倉庫的根URL。兩者都不排除其他任何東西。
  • 雲計算核心技術Docker教程:.dockerignore文件介紹
    在docker CLI將上下文發送到docker守護程序之前,它會在上下文的根目錄中查找名為.dockerignore的文件。如果此文件存在,則CLI會修改上下文以排除與其中的模式匹配的文件和目錄。
  • Docker基礎技術:DeviceMapper
    它是什麼意思呢?你可以聯想一下我們計算機中的內存管理中用到的——「虛擬內存技術」——作業系統給每個進程N多N多用不完的內址地址(32位下,每個進程可以有最多2GB的內存空間),但是呢,我們知道,物理內存是沒有那麼多的,如果按照進程內存和物理內存一一映射來玩的話,那麼,我們得要多少的物理內存啊。
  • 什麼是Docker,和虛擬機有怎樣的區別
    大家好今天是母親節了,大家早上有沒有給母親發一個簡訊或者打個電話呢,如果看到了今天推送的文章,記得晚上下班後給母親發個祝福,聊聊家常……
  • 用Docker 搭建Web服務環境
    做過開發的人對開發環境的安裝、配置應該都不會太陌生,不管你做什麼開發,對開發環境都會具有一定的依賴性的。Docker 概述Docker 是什麼?可以將 Docker 理解為打包環境的容器,它可以將環境打包成鏡像,在需要的時候,再基於該鏡像來創建容器,這樣所需要的環境就回來了。
  • 雲計算核心技術Docker教程:Docker鏡像使用
    當運行容器時,使用的鏡像如果在本地中不存在,docker 就會自動從 docker 鏡像倉庫中下載,默認是從 Docker Hub 公共鏡像源下載。我們可以使用 docker images 來列出本地主機上的鏡像。
  • Docker系列教程01-使用Docker鏡像
    Docker鏡像簡介1、什麼是鏡像?Docker鏡像是一個只讀的模板。docker search 語法docker search 語法例如,搜索mysql相關的鏡像,命令如下:docker pull 語法docker pull 語法通常情況下, 描述一個鏡像需要包括「名稱+標籤「信息。
  • 「走進k8s」Docker 簡介和安裝(一)
    關於docker這塊從0開始已經寫了4個系列了,但是針對k8s還是有點怵,因為k8s確實比較麻煩裡面的東西比較複雜,而且針對k8s想走的更遠還是需要實踐
  • 用 Docker 構建 MySQL 主從環境
    前言本篇文章記錄我使用 docker-compose 以及 dockerfile 來構建基於 binlog 的 MySQL 主從環境。如果你嚴格按照文中的步驟進行配置,相信很快就可以搭建好一個基礎的 MySQL 主從環境。
  • Docker容器的三種創建運行方式,一個比一個好用
    在/some/content創建一個index.html,隨便輸入個內容。訪問下 ip+1080可以看到請求到nginx了。Dockerfile文件內可以自定義鏡像內容,有很多指令可以用,比如可以在配置容器創建後運行shell腳本等,可以自行查閱,本文僅做一個簡單的用法示例入門。注意:Dockerfile 的指令每執行一次都會在 docker 上新建一層,所以儘量不要寫太多層。