Doker学习笔记--黑马

介绍:快速构建、运行、管理应用的工具

在不同的服务器上部署多个应用 ,但是往往不同应用之间会有冲突 ,因为它们所依赖的环境,函数库,配置都不一样,此时docker在运行时形成了一个隔离环境(容器) ,各应用之间互不干扰

docker运行时去镜像仓库 下载镜像(image) ,该镜像仓库准备了常用的软件的镜像,这些镜像简单来说就是安装好的,配置好的,包含其环境配置和系统函数库的绿色免安装的包 ,下载下来即可直接运行,无需考虑环境配置,依赖等问题。

找到这些镜像(执行命令)-->守护进程进行监听,根据命令判断运行什么应用-->去镜像仓库寻找该应用的镜像-->将该镜像拉取到本地运行(可以直接运行,一次下载,多次运行)-->创建隔离环境(容器)

mysql的客户端无法直连mysql容器的端口,但是可以连接其所在的宿主机,再进行端口映射(将宿主机的3306端口和容器的3306端口进行映射),因为宿主机和容器由docker控制,因此两者之间可以进行端口映射,当我们去访问宿主机的3306端口,docker会将请求转到容器的3306端口,相当于间接访问到了容器

注意-p 3306:3306 前面的3306为宿主机的端口(不一定是3306),后面的是容器内的3306端口(取决于进程,端口无需改动)。比如,部署两台mysql,则有两个容器,这两个容器端口都是3306(隔离不冲突),但各自所在的宿主机不能都为3306,否则会冲突

相关推荐
songyuc5 分钟前
LangChain学习笔记
学习·langchain
Chunyyyen10 分钟前
【第二十四周】代码问题解决记录+大模型学习
学习
nianniannnn1 小时前
Eigen 矩阵操作笔记
c++·笔记·线性代数·矩阵
红石榴花生油1 小时前
RBAC权限配置 核心笔记
数据库·windows·笔记
一只乔哇噻1 小时前
java后端工程师+AI大模型进修ing(研一版‖day56)
java·开发语言·学习·算法·语言模型
小奶包他干奶奶1 小时前
Webpack学习——Plugin(插件)
前端·学习·webpack
玩具猴_wjh1 小时前
11.29 学习笔记
笔记·学习
白日做梦Q1 小时前
深度学习调参手册:学习率、Batch Size 的最优搭配策略
深度学习·学习·batch
zore_c1 小时前
【C语言】数据在内存中的存储(超详解)
c语言·开发语言·数据结构·经验分享·笔记
摇滚侠2 小时前
零基础小白自学Git_Github教程,Git 四个分区的概念,笔记11
笔记·git·github