Docker 服务名总结笔记(超清晰版)

一、Docker 里到底有哪些"名字"?

Docker 里有 3 种名字,很多人会混淆:

名称 示例 出现位置 用途 是否影响 MySQL 主从
容器名(container_name) mysql-container docker run / compose 给人看的名字,用于 docker 命令 ❌ 不影响
服务名(service name) mysql docker-compose.yml Docker 内部 DNS 主机名 ✔ 仅在 compose 内部网络有效
主机名(hostname) 默认=容器名 容器内部 Linux 主机名 ❌ 一般不用
IP 地址 192.168.10.143 宿主机 / 局域网 跨容器、跨服务器通信 ✔ 经常用

二、什么是 Docker 服务名?

只有 docker-compose.yml 才有服务名。

例如:

yaml

复制代码
services:
  mysql:
  redis:
  backend:

这里的:

  • mysql

  • redis

  • backend

就是 服务名(service name)

✔ 服务名的作用

在 Docker Compose 内部网络中:

复制代码
backend → mysql

就像访问一个域名一样。

✔ 服务名 = Docker 内部 DNS 主机名

Compose 会自动创建一个内部网络:

复制代码
mysql → 172.18.0.2
redis → 172.18.0.3
backend → 172.18.0.4

所以 Django (web)可以这样访问 MySQL:

复制代码
HOST = "mysql"

三、docker run 没有服务名

你这条命令:

复制代码
docker run --name mysql-container ...

这里的:

复制代码
--name mysql-container

容器名,不是服务名。

docker run 不会创建 service name。

四、你为什么感觉"我部署项目时没用到服务名"?

因为你部署主从复制时:

  • 主库是一个容器

  • 从库是另一个容器

  • 它们之间通过 宿主机 IP 通信

你的主从复制命令是:

复制代码
MASTER_HOST='192.168.10.143'

所以你根本不会用到:

  • mysql

  • mysql-master

  • mysql-slave

这些 service 名。

你用的是 IP,不是 Docker 内部网络。

五、TLS 证书到底应该匹配什么?

最关键的一句话:

🔥 TLS 证书必须匹配你在 CHANGE MASTER TO 里写的 MASTER_HOST。

你写的是:

复制代码
MASTER_HOST='192.168.10.143'

所以证书必须:

复制代码
mkcert 192.168.10.143

和 service 名完全无关。

六、什么时候才需要用服务名?

只有一种情况:

✔ 主库和从库都在同一个 docker-compose.yml 里

例如:

yaml

复制代码
services:
  mysql-master:
  mysql-slave:

主从复制写法:

复制代码
MASTER_HOST='mysql-master'

证书必须:

复制代码
mkcert mysql-master

但现在不是这种架构。

七、最终总结(最重要)

我给你一句最关键的总结:

docker-compose 才有服务名;docker run 没有服务名。 主从复制使用什么 Host,就必须用这个 Host 来生成 TLS 证书。 你现在用的是 IP,所以证书必须用 IP。

相关推荐
蒸蒸yyyyzwd1 小时前
cpp选手备战后端学习笔记day6 秋招笔试题
笔记·学习
DeviceHub3 小时前
硬件工程师选型笔记:ALPS SKPMAPE010 与 Tonevee TS-3025 贴片轻触开关 PIN TO PIN 评估指南
笔记
猫吃了源码3 小时前
k9s简介和安装
linux·docker·kubernetes
疯狂打码的少年4 小时前
【数据结构】二叉树的性质(五大性质+计算)
数据结构·笔记·算法
云原生指北4 小时前
Docker Sandboxes 上手:从安装到第一次跑 Agent
运维·docker·容器
ziyun6668885 小时前
Docker 容器化 Web 服务架构搭建与自动化运维项目
运维·docker·架构
Capricorn19885 小时前
知芽研究问题看板无法推进?从孵化区到笔记的机制排查指南
大数据·论文阅读·人工智能·笔记·学习方法·论文笔记
闪闪发亮的小星星5 小时前
相机脱靶量VS精跟踪精度
笔记
皖山文武6 小时前
逻辑代数基础学习笔记--概述
笔记·学习·机器学习
heimeiyingwang7 小时前
【架构实战】Kubernetes故障排查全景图:从Pod异常到集群雪崩的诊断手册
容器·架构·kubernetes