【LinuxSRE運維學習】2022最新Docker常見面試題彙總!
什麼是Docker?它是一個開源的應用容器引擎,基於go語言開發並遵循了apache2.0協議開源,它是在Linux容器裡執行應用的開源工具,是一種輕量級的虛擬機器,本篇文章總結了一些Docker常見面試題,請看下文:
Docker與虛擬機器的區別是什麼?
虛擬機器透過新增Hypervisor層(虛擬化中間層),虛擬出網路卡、記憶體、CPU等虛擬硬體,再在其上建立虛擬機器,每個虛擬機器都有自己的系統核心。而Docker容器則是透過隔離(namesapce)的方式,將檔案系統、程式、裝置、網路等資源進行隔離,再對許可權、CPU資源等進行控制(cgroup),最終讓容器之間互不影響,容器無法影響宿主機。
與虛擬機器相比,容器資源損耗要少。同樣的宿主機下,能夠建立容器的數量要比虛擬機器多
但是,虛擬機器的安全性要比容器稍好,而docker容器與宿主機共享核心、檔案系統等資源,更有可能對其他容器、宿主機產生影響。
Docker的三大核心是什麼?
映象:Docker的映象是建立容器的基礎,類似虛擬機器的快照,可以理解為一個面向Docker容器引擎的只讀模板。透過映象啟動一個容器,一個映象是一個可執行的包,其中包括執行應用程式所需要的所有內容包含程式碼,執行時間,庫、環境變數、和配置檔案。
容器:Docker的容器是從映象建立的執行例項,它可以被啟動、停止和刪除。所建立的每一個容器都是相互隔離、互不可見,以保證平臺的安全性。可以把容器看做是一個簡易版的linux環境(包括root使用者許可權、映象空間、使用者空間和網路空間等)和執行在其中的應用程式。
倉庫:倉庫註冊伺服器上往往存放著多個倉庫,每個倉庫中包含了多個映象,每個映象有不同標籤(tag)。
如何修改Docker的儲存位置?
預設情況下Docker的存放位置為:/var/lib/docker,可以透過命令檢視具體位置:docker info | grep “Docker Root Dir”
修改到其它目錄:首先停掉Docker服務,systemctl stop docker,然後移動整個/var/lib/docker 目錄到目的路徑,mkdir -p /root/data/docker、mv /var/lib/docker /root/data/docker、ln -s /root/data/docker /var/lib/docker --快捷方式
Docker在後臺的標準執行過程是什麼?
當利用docker run來建立容器時, Docker在後臺的標準執行過程是:
檢查本地是否存在指定的映象。當映象不存在時,會從公有倉庫下載;
利用映象建立並啟動一個容器;
分配一個檔案系統給容器,在只讀的映象層外面掛載一層可讀寫層;
從宿主主機配置的網橋介面中橋接一個虛擬機器介面到容器中;
分配一個地址池中的 IP 地址給容器;
執行使用者指定的應用程式,執行完畢後容器被終止執行;
什麼是Docker的資料卷?
資料卷是一個供容器使用的特殊目錄,位於容器中。可將宿主機的目錄掛載到資料捲上,對資料卷的修改操作立刻可見,並且更新資料不會影響映象,從而實現資料在宿主機與容器之間的遷移。資料卷的使用類似於Linux下對目錄進行的mount操作。
如果需要在容器之間共享一些資料,最簡單的方法就是使用資料卷容器。資料卷容器是一個普通的容器,專門提供資料卷給其他容器掛載使用。
容器互聯是透過容器的名稱在容器間建立一條專門的網路通訊隧道。簡單點說,就是會在源容器和接收容器之間建立一條隧道,接收容器可以看到源容器指定的資訊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2912425/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JavaScript常見面試題彙總(含答案)JavaScript面試題
- Java常見面試題及答案彙總Java面試題
- 【彙總】Python爬蟲常見面試題!Python爬蟲面試題
- Docker常見面試題Docker面試題
- Linux 運維工程師面試真題-5-常考題目彙總Linux運維工程師面試
- 常見面試題學習(4)面試題
- 2020年前端常見面試題解析彙總前端面試題
- Android複習資料——常見面試演算法題彙總(二)Android面試演算法
- Android複習資料——常見面試演算法題彙總(一)Android面試演算法
- 【彙總】網路安全滲透測試常見面試題!面試題
- Java 集合常見知識點&面試題總結(上),2022 最新版!Java面試題
- Linux運維工程師 50個常見面試題Linux運維工程師面試題
- 面試寶典:15道MyBatis 常見面試題彙總及答案MyBatis面試題
- MyBatis學習總結(24)——Mybatis常見問題彙總MyBatis
- 最新PHP面試題彙總(附答案)PHP面試題
- Java 基礎常見知識點&面試題總結(下),2022 最新版!Java面試題
- 常見Linux運維面試題,你答對了嗎?Linux運維面試題
- 機器學習面試問題彙總機器學習面試
- 2024-04-19 前端常見面試題彙總(vue篇)前端面試題Vue
- 2024-04-19 前端常見面試題彙總(react篇)前端面試題React
- Java 基礎常見知識點&面試題總結(上),2022 最新版!| JavaGuideJava面試題GUIIDE
- Java 基礎常見知識點&面試題總結(中),2022 最新版!| JavaGuideJava面試題GUIIDE
- Python常見面試題總結——個人Python學習經驗Python面試題
- Webpack常見面試題總結Web面試題
- 2023最新MySQL高頻面試題彙總MySql面試題
- Linux運維常見筆試題(選擇題)Linux運維筆試
- 【Java面試題系列】:Java基礎知識常見面試題彙總 第二篇Java面試題
- 前端常見面試題少量總結前端面試題
- Bootstrap常見問題彙總boot
- Java 常見問題彙總Java
- Redis常見問題彙總Redis
- 面試題(五)常見vue相關面試題總結面試題Vue
- 面試Python機器學習時,常見的十個面試題Python機器學習面試題
- 大資料面試常見的面試題總結大資料面試題
- 資料庫常見面試題總結資料庫面試題
- MySQL常見面試題總結[精讀]MySql面試題
- ES6常見面試題總結面試題
- Redis Manager 常見問題彙總Redis