Doker学习笔记--黑马

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

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

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

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

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

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

相关推荐
优雅的潮叭4 小时前
c++ 学习笔记之 shared_ptr
c++·笔记·学习
claider5 小时前
Vim User Manual 阅读笔记 usr_08.txt Splitting windows 窗口分割
笔记·编辑器·vim
am心5 小时前
学习笔记-用户下单
笔记·学习
微露清风5 小时前
系统性学习C++-第二十二讲-C++11
java·c++·学习
进阶小白猿6 小时前
Java技术八股学习Day20
java·开发语言·学习
renhongxia16 小时前
学习基于数字孪生的工艺参数优化
学习
gjf05_056 小时前
人该怎样活着呢?版本68.6
学习
GISer_Jing6 小时前
AI Agent 智能体的“深度思考”与“安全防线”
人工智能·学习·安全·aigc
我命由我123458 小时前
充血模型与贫血模型
java·服务器·后端·学习·架构·java-ee·系统架构
时间会给答案scidag8 小时前
Spring AI Alibaba 学习day01
人工智能·学习·spring