Docker的介紹與安裝

?

Docker 對初學者的簡單解釋和應用場景


1.什么是 Docker?

簡單來說,Docker 就像一個“裝箱子”的工具,這個箱子叫做“容器”。

你寫的程序和它運行需要的環境(比如操作系統、軟件、工具)都裝進一個箱子里。這個箱子可以搬到任何一臺電腦上,不用擔心環境不一樣導致程序不能運行。


2.Docker 的好處

  • 環境一致:開發時的環境和別人運行程序的電腦完全一樣,避免“我這能運行,你那不行”的問題。

  • 輕松分享:打包好的箱子可以直接分享給別人,別人拿了就能跑。

  • 快速運行:啟動程序速度快,不用像傳統虛擬機一樣啟動一個復雜的系統。


3.初學者可以用 Docker 做什么?

  1. 搭建學習環境

    • 想學習數據庫、編程語言或者搭建網站,不用擔心安裝繁瑣,只要拉一個對應的 Docker 容器,幾秒鐘就能開始使用。
  2. 試用新軟件

    • 想試試新版本的軟件或者工具,不影響電腦上的其他軟件,用 Docker 容器試運行。
  3. 保存和分享項目

    • 寫的程序連同它的運行環境一起打包,別人拿到你的包可以快速運行。

4.舉個簡單例子

你想在電腦上練習 Python 編程,而且想用特定版本的 Python 和一些庫:

  • 你用 Docker 拉一個“裝有Python環境”的容器。

  • 通過容器,你能直接寫代碼、運行程序,不用擔心本地電腦有沒有安裝對應版本。

  • 之后你可以把這個容器發給朋友,朋友也能用完全一樣的環境跑你的代碼。

Docker 就像是給程序裝了一個萬能的小盒子,不管你換了什么電腦,這個盒子里的程序都能平穩運行。
對于初學者來說,學習使用 Docker 可以讓你更方便地搭建各種環境,減少很多因為環境問題帶來的煩惱。


Docker 安裝與入門使用指南

一、安裝 Docker

1. Windows

  • 訪問官網下載安裝包:https://www.docker.com/get-started
  • 下載 Docker Desktop for Windows
  • 根據提示安裝,安裝時需開啟 Windows 的 Hyper-V 功能(安裝程序會提示)。
  • 安裝完成后,重啟電腦。
  • 打開 Docker Desktop,確認 Docker 圖標顯示正常(鯨魚圖標)。

2. macOS

  • 同樣訪問官網下載安裝包。
  • 下載 Docker Desktop for Mac
  • 打開安裝包,拖動 Docker 到應用程序文件夾。
  • 運行 Docker Desktop,等待啟動完成。

3. Linux(以 CentOS7 為例)

官方文檔地址:https://docs.docker.com/engine/install/centos/

1.卸載舊版docker

sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

2.設置docker yum源(二選一)
設置為阿里云的源速度可以快一點(推薦)

sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

如果不想阿里云的源,也可用官方源(可能遇到網絡問題)

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

3.安裝docker

sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

4.啟動docker

sudo systemctl start docker

5.設置開機自啟動

sudo systemctl enable docker

6.查看版本

docker -v
docker info

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/86709.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/86709.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/86709.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

引導相機:工業自動化的智能之眼,賦能制造業高效升級

在工業自動化浪潮中,精準的視覺引導技術正成為生產效率躍升的關鍵。作為遷移科技——一家成立于2017年、專注于3D工業相機和3D視覺系統的領先供應商,我們深知"引導相機"的核心價值:它不僅是一個硬件設備,更是連接物理世…

智能相機如何重塑工業自動化?遷移科技3D視覺系統的場景革命

從硬件參數到產業價值,解碼高精度視覺系統的落地邏輯 一、工業視覺的“智慧之眼” 遷移科技深耕3D工業相機領域,以“穩定、易用、高回報”為核心理念,打造覆蓋硬件、算法、軟件的全棧式視覺系統。成立6年累計融資數億元的背后,是…

【數據挖掘】聚類算法學習—K-Means

K-Means K-Means是一種經典的無監督學習算法,用于將數據集劃分為K個簇(clusters),使得同一簇內的數據點相似度高,不同簇間的相似度低。它在數據挖掘、模式識別和機器學習中廣泛應用,如客戶細分、圖像壓縮和…

linux環境內存滿php-fpm

檢查 PHP-FPM 配置 pm.max_children:該參數控制 PHP-FPM 進程池中最大允許的子進程數。過高的子進程數會導致內存占用過大。你可以根據服務器的內存大小來調整 pm.start_servers:控制 PHP-FPM 啟動時創建的進程數。根據實際情況調整此值。 pm.min_spare_…

基于CNN卷積神經網絡圖像識別小程序9部合集

基于CNN卷積神經網絡圖像識別小程序合集-視頻介紹下自取 ? 內容包括: 基于python深度學習的水果或其他物體識別小程序 003基于python深度學習的水果或其他物體識別小程序_嗶哩嗶哩_bilibili 代碼使用的是python環境pytorch深度學習框架,代碼的環境安…

WebRTC(九):JitterBuffer

JitterBuffer Jitter “Jitter”指的是連續到達的媒體包之間時間間隔的變化。在網絡傳輸中,由于: 網絡擁塞路由路徑變化隊列排隊不同鏈路帶寬差異 導致包之間的接收時間不一致,這就是網絡“抖動”。 作用 **JitterBuffer(抖…

【推薦100個unity插件】在 Unity 中繪制 3D 常春藤,模擬生長——hedera插件的使用

注意:考慮到后續接觸的插件會越來越多,我將插件相關的內容單獨分開,并全部整合放在【推薦100個unity插件】專欄里,感興趣的小伙伴可以前往逐一查看學習。 效果演示 文章目錄 效果演示前言一、常春藤生成器工具下載二、工具使用1、…

【三維重建】【3DGS系列】【深度學習】3DGS的理論基礎知識之高斯橢球的幾何變換

【三維重建】【3DGS系列】【深度學習】3DGS的理論基礎知識之高斯橢球的幾何變換 文章目錄 【三維重建】【3DGS系列】【深度學習】3DGS的理論基礎知識之高斯橢球的幾何變換前言模型變換(Model Transformation)觀測變換(Viewing Transformation)視圖變換(View Transformation)投影…

EXISTS 和 NOT EXISTS 、IN (和 NOT IN)

在 SQL 中,EXISTS、NOT EXISTS 和 IN 都是用于子查詢的條件運算符,用于根據子查詢的結果過濾主查詢的行。它們之間的區別主要體現在工作方式、效率、對 NULL 值的處理以及適用場景上。 1. EXISTS 和 NOT EXISTS 作用: EXISTS: 檢查子查詢是…

GitHub 趨勢日報 (2025年06月25日)

📊 由 TrendForge 系統生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日報中的項目描述已自動翻譯為中文 📈 今日獲星趨勢圖 今日獲星趨勢圖 880 awesome 788 build-your-own-x 691 free-for-dev 427 best-of-ml-python 404 …

互聯網大廠Java求職面試:Java虛擬線程實戰

互聯網大廠Java求職面試:Java虛擬線程實戰 文章內容 開篇:技術總監與程序員鄭薪苦的三輪對話 在一場緊張而嚴肅的Java工程師面試中,技術總監張工正對候選人鄭薪苦進行深入提問。鄭薪苦雖然性格幽默,但對技術有著扎實的理解。今天…

網絡安全的兩大威脅:XSS與CSRF攻擊實例解析

在網絡攻擊中,XSS跨站腳本攻擊(Cross Site Scripting)與CSRF跨站請求偽造攻擊(Cross-Site Request Forgery)是兩種常見的攻擊方式,它們之間存在顯著的區別。以下是對這兩種攻擊方式的詳細比較: 一、攻擊原理 XSS跨站腳本攻擊 攻擊者通過在Web頁面中注入惡意腳本來實現攻…

如何一次性將 iPhone 中的聯系人轉移到 PC

許多重要的聯系人都存儲在您的 iPhone 上。為了保護關鍵信息,您可能需要將聯系人從 iPhone 轉移到 PC,這是一種有效的聯系人備份方法。如果您在將 iPhone 聯系人轉移到電腦上遇到困難,現在可以從本文中學習 5 個有效的解決方案,然…

Spring Boot開啟定時任務的三種方式 【@EnableScheduling注解,SchedulingConfigurer接口,Quartz 框架】

Spring Boot 開啟定時任務的三種方式? ? ? 在 Spring Boot 應用開發過程中,定時任務是十分常見的需求,比如定時清理日志文件、定期備份數據庫數據、定時發送郵件提醒等。Spring Boot 提供了多種開啟定時任務的方式,本文將詳細介紹三種常見…

LLM 編碼器 怎么實現語義相關的 Token 向量更貼近? mask訓練:上下文存在 ;; 自回歸訓練:只有上文,生成模型

LLM 編碼器 怎么實現語義相關的 Token 向量更貼近? 目錄 LLM 編碼器 怎么實現語義相關的 Token 向量更貼近?mask訓練:上下文存在自回歸訓練:只有上文,生成模型一、核心機制:損失函數與反向傳播的“語義校準”1. 損失函數的“語義約束”2. 嵌入層參數的“動態調整”二、關…

從OCR瓶頸到結構化理解來有效提升RAG的效果

當人們探討如何讓人工智能系統更好地從文檔中查找和使用信息時,通常關注的是令人矚目的算法和前沿的大型語言模型。但問題是:如果文本提取的質量很差,那么后續的努力都將付諸東流。本文探討OCR質量如何影響檢索增強生成(RAG&#…

SpringBoot -- 整合Junit

11.SpringBoot 整合 Junit 11.1 為什么需要單元測試 由于在SpringBoot開發過程中,每開發一個模塊,有時需要從 controller、service、mapper 到甚至 xml 文件的編寫全部開發完畢才能進行測試,這是十分浪費時間的,比如開發人員想測…

虛擬機遠程連接編譯部署QT程序

概要 邏輯 我們需要湊齊 QT庫、交叉編譯工具、sysroot這三大件。 交叉編譯的程序是部署到板卡環境運行,需要構建和板卡一樣的庫環境。 sysroot是我們在虛擬機上自己命名的一個文件夾,包含開發板的運行系統所需的所有文件。 虛擬機是x64版本,開發板是arm64版本。 如果開發板…

基于SpringBoot的智慧旅游系統

以智慧旅游系統的設計與實現為研究對象,旨在通過科技手段提升旅游業的管理效能和游客體驗。在系統設計方面,深入分析了地理特征、豐富的文化底蘊以及多樣的自然景觀。結合這些獨特之處,構建了一個多層次的旅游管理系統,包括景點信…

下載最新版本的OpenOCD

Download OpenOCD for Windowsd: https://gnutoolchains.com/arm-eabi/openocd/