Doker学习笔记--黑马

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

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

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

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

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

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

相关推荐
嗯嗯=5 小时前
python学习篇
开发语言·python·学习
朱朱没烦恼yeye8 小时前
java基础学习
java·python·学习
lkbhua莱克瓦248 小时前
进阶-索引3-性能分析
开发语言·数据库·笔记·mysql·索引·性能分析
aloha_7899 小时前
agent智能体学习(尚硅谷,小智医疗)
人工智能·spring boot·python·学习·java-ee
科技林总10 小时前
2.2 图论应用
学习
陌上明苏11 小时前
.NET学习-依赖注入、配置系统、日志系统
学习
知识分享小能手11 小时前
Ubuntu入门学习教程,从入门到精通, Ubuntu 22.04中的Shell编程详细知识点(含案例代码)(17)
linux·学习·ubuntu
美少女战士1@11 小时前
【笔记】AD-检查与导出文件
笔记
大山老树11 小时前
行动教练学习笔记
笔记·学习
副露のmagic13 小时前
更弱智的算法学习 day16
数据结构·学习·算法