SpringCloud第一篇Docker基礎

文章目錄

  • 一、常見命令
  • 二、數據卷
  • 三、數據掛載
  • 四、自定義鏡像
  • 五、網絡

一、常見命令

Docker最常見的命令就是操作鏡像、容器的命令,詳見官方文檔: https://docs.docker.com/
在這里插入圖片描述
需求:
在DockerHub中搜索Nginx鏡像,查看鏡像的名稱
在這里插入圖片描述

docker pull nginx

拉取Nginx鏡像
查看本地鏡像列表

docker images

創建并運行Nginx容器

docker run -d --name nginx -p 80:80 nginx

查看容器

docker ps
docker ps -a

停止容器

docker stop nginx

再次啟動容器

docker start nginx

進入Nginx容器

docker exec -it nginx bash
#退出容器
exit

刪除容器

docker rm mysql
docker rm -f mysql 

二、數據卷

數據卷(volume)是一個虛擬目錄,是容器內目錄與宿主機目錄之間映射的橋梁。
在這里插入圖片描述
在這里插入圖片描述

三、數據掛載

查看容器是否與宿主機掛載

docker inspect 容器名

Mounts目錄下為掛載信息
在這里插入圖片描述
在這里插入圖片描述

docker inspect mysqldocker run -d \--name mysql \-p 3306:3306 \-e TZ=Asia/Shanghai \-e MYSQL_ROOT_PASSWORD=123 \-v /root/mysql/data:/var/lib/mysql \-v /root/mysql/data:/docker-entrypoint-initdb.d \-v /root/mysql/data:/etc/mysql/conf.d \mysql

四、自定義鏡像

鏡像就是包含了應用程序、程序運行的系統函數庫、運行配置等文件的文件包。構建鏡像的過程其實就是把上述文件打包的過程。
在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述
更新詳細語法說明,請參考官網文檔: https://docs.docker.com/engine/reference/builder

案例:
我們可以基于Ubuntu基礎鏡像,利用Dockerfile描述鏡像結構

# 指定基礎鏡像
FROM ubuntu:16.04
# 配置環境變量,JDK的安裝目錄、容器內時區
ENV JAVA_DIR=/usr/local
# 拷貝jdk和java項目的包
COPY ./jdk8.tar.gz $JAVA_DIR/
COPY ./docker-demo.jar /tmp/app.jar
# 安裝JDK
RUN cd $JAVA_DIR \ && tar -xf ./jdk8.tar.gz \ && mv ./jdk1.8.0_144 ./java8
# 配置環境變量
ENV JAVA_HOME=$JAVA_DIR/java8
ENV PATH=$PATH:$JAVA_HOME/bin
# 入口,java項目的啟動命令
ENTRYPOINT ["java", "-jar", "/app.jar"]

也可以直接基于JDK為基礎鏡像,省略前面的步驟:

# 基礎鏡像
FROM openjdk:11.0-jre-buster
# 拷貝jar包
COPY docker-demo.jar /app.jar
# 入口
ENTRYPOINT ["java", "-jar", "/app.jar"]

五、網絡

默認情況下,所有容器都是以bridge方式連接到Docker的一個虛擬網橋上:
在這里插入圖片描述
加入自定義網絡的容器才可以通過容器名互相訪問,Docker的網絡操作命令如下:
在這里插入圖片描述

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

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

相關文章

k8s集群如kubeadm init和kube-flannel.yam問題

查看k8s中角色內容kubectl get all (顯示pod和server以及delment) 刪除應用資源選擇刪除先刪除部署查看部署和pod沒了服務還在,但資源和功能以及刪除,刪除服務kubectl delete 服務名(部署名),get pods 獲取默認空間的容…

A133 Android10 root修改

1.前言 客戶應用需求root相關的權限,我們需要修改系統的權限才可以滿足客戶需求 2.修改方法 frameworks層:注釋掉 diff --git a/frameworks/base/core/jni/com_android_internal_os_Zygote.cpp b/frameworks/base/core/jni/com_android_internal_os_…

從資金到未來:技術融資如何重塑IT顧問在AI與網絡安全的角色?

一方面是人工智能 (AI) 和機器學習 (ML) 的雙引擎,另一方面是網絡安全和數據泄露威脅中不斷變化的威脅形勢,IT 格局正在經歷翻天覆地的變化。這場數字革命對 IT 顧問來說既是挑戰也是機遇,但要成…

三級_網絡技術_09_IP地址規劃技術

1.某企業產品部的IP地址塊為211.168.15.192/26,市場部的為211.168.15.160/27,財務部的為211.168.15.128/27,這三個地址塊經聚合后的地址為()。 211.168.15.0/25 211.168.15.0/26 211.168.15.128/25 211.168.15.128/26 2.若某大學分配給計…

低代碼開發在金融系統中的應用研究

低代碼開發在金融系統中的實施策略 在金融行業,系統的穩定性、安全性以及數據的完整性是至關重要的考慮要素。因此,低代碼開發策略在金融系統中的應用必須遵循一系列精細且嚴格的實施準則。 明確且精準的業務需求分析是基礎。金融系統的復雜性意味著在開…

解決計算機中mfc140u.dll沒有被指定在windows上運行

在打開電腦軟件時候出現mfc140u.dll丟失或找不到mfc140u.dll怎么辦?遇到這個問題相當困擾,mfc140u.dll到底是什么?為什么會出現這個情況,相信很多人都不知道,今天我給大家詳細介紹一下mfc140u.dll是什么,為…

【C++修行之道】string類的使用

目錄 一.C語言中的字符串 二、標準庫中的string類 (了解) 2.1 string類(了解) 2.2 幫助文檔閱讀 三、 string類的常用接口說明 3.1 string類對象的常見構造 3.2 string類對象的容量操作 3.3 string類對象的訪問及遍歷操作 字符串類的簡單實現 3.4 string類對象的修改…

【論文閱讀筆記】ASPS: Augmented Segment Anything Model for Polyp Segmentation

1.論文介紹 ASPS: Augmented Segment Anything Model for Polyp Segmentation ASPS:用于息肉分割的擴展SAM模型 2024年 arxiv Paper Code 2.摘要 息肉分割在結直腸癌診斷中起著至關重要的作用。最近,Segment Anything Model(SAM)的出現利用其在大規模…

視頻壓縮軟件哪個壓縮最小,視頻用什么軟件壓縮最小

在數字媒體時代,視頻內容的生產與分享已成為生活常態。但隨之而來的問題就是,大視頻文件占用過多存儲空間,上傳和分享也變得不便。本文將為你揭示如何將視頻壓縮到最小,同時保持畫質清晰。讓我們一起探索吧! 下載并文件…

剪輯抽幀技巧有哪些 剪輯抽幀怎么做視頻 剪輯抽幀補幀怎么操作 剪輯抽幀有什么用 視頻剪輯哪個軟件好用在哪里學

打破視頻節奏,讓作品告別平庸。抽幀剪輯可以改變視頻敘事節奏,人為制造沖突、轉折、卡頓的效果。這種剪輯方式,不僅可以推進劇情發展,還能吸引觀眾的注意力,有效防止觀影疲勞。有關剪輯抽幀技巧有哪些,剪輯…

python中 is 的意義和用法

在Python中,is 是一個關鍵字,用于比較兩個對象的身份(即它們是否是同一個對象)。如果兩個對象是同一個對象,is 將返回 True;否則返回 False。這與比較兩個對象的值是否相等的 操作符不同。 基本用法 a …

JavaScript——continue語句

目錄 任務描述 相關知識 continue語句 編程要求 任務描述 本關任務:計算數組中所有正數或者所有負數的和。 相關知識 上一實訓介紹了關鍵字break的使用,continue是一個和break含義十分接近的關鍵字,本關將詳細剖析continue的用法。 co…

Typora篇-忍痛開啟

語雀專業會員即將到期, 我看著99元的學費款, 我決定重新用回Typora。 雖然里面有一些文件但是我還是舍不得?_? 99元巨款。 下面開啟我的Typora整活歷程, 大家有什么好用的插件快捷方式一起來分享啊。

MyBatis框架學習筆記(二):原生API 的調用 和 注解的使用

1 MyBatis原生API 1.1 原生API 快速入門需求 在筆記一案例的基礎上將增刪改查,使用 MyBatis 原生的 API 完成,就是直接通過SqlSession 接口的方法來完成 1.2 原生API 快速入門-代碼實現 創建 src\test\java\com\hspedu\mapper\MyBatisNativeTest.jav…

uni-app 封裝http請求

1.引言 前面一篇文章寫了使用Pinia進行全局狀態管理。 這篇文章主要介紹一下封裝http請求,發送數據請求到服務端進行數據的獲取。 感謝: 1.yudao-mall-uniapp: 芋道商城,基于 Vue Uniapp 實現,支持分銷、拼團、砍價、秒殺、優…

實用性提升百分之一百!!!【ONLYOFFICE 8.1版本】全方位深度性能測評

目錄 【ONLYOFFICE 8.1 版本】全方位深度性能測評 一、界面與用戶體驗 二、文字處理功能 表格處理功能 演示文稿功能 協作與共享功能 性能與穩定性 總結 【ONLYOFFICE 8.1 版本】全方位深度性能測評 在當今數字化辦公的時代,辦公軟件的選擇對于提高工作效率和…

selenium處理cookie問題實戰

1. cookie獲取不完整 需要進入的資損平臺(web)首頁,才會出現有效的ctoken等信息 1.1. 原因說明 未進入指定頁面而獲取的 cookie 與進入頁面后獲取的 cookie 可能會有一些差異,這取決于網站的具體實現和 cookie 的設置方式。 通常情況下,一些…

x-mind沒有配置文件,可以自己創建文件修改內存

x-mind.ini 是 XMind 配置文件,用于自定義啟動選項。以下是一個完整的 x-mind.ini 文件示例。此配置假設你正在使用 Windows 系統并希望配置一些常見的啟動參數: -startup plugins/org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar --launcher.l…

query和params的區別是什么

query 和 params 是 Vue Router 中傳遞路由參數的兩種不同方式。它們的主要區別在于 URL 結構和獲取參數的方法。 1. params params 是用來傳遞路由路徑中的動態參數。這些參數在路由路徑中以冒號 (:) 表示。 路由配置: {path: /interviewApplication/:backpack…

NCCL源碼詳解6:通信拓撲識別感知構建 物理拓撲xml文件 ncclTopoGetSystem() 視頻教程

Nvidia NCCL如何構建物理拓撲 視頻教程在這: 2.2 NCCL源碼分析:物理拓撲識別感知xml通信topo構建 ncclTopoGetSystem()_嗶哩嗶哩_bilibili 一、ncclTopoGetSystem()拓撲構建 1.1 ncclTopoGetSystem()拓撲構建核心邏輯: 1、 嘗試從文件加…