docker 容器端口映射消失

问题描述

最近遇到一个奇怪的问题,我在docker中安装的mysql容器不清楚什么原因导致的,无端口映射了。

容器3306=>主机的3306

容器的创建命令如下:

bash 复制代码
#下载镜像
docker pull mysql:5.7.37
#创建mysql实例
docker run --name ruoyi-mysql -p 3306:3306 -e MYSQL\_ROOT\_PASSWORD=itkey123456 -d mysql:5.7.37

以前是可以正常使用的,过了一段时间没有启动过docker,后来启动docker容器发现数据库无法正常连接。

bash 复制代码
docker ps
CONTAINER ID   IMAGE          COMMAND                   CREATED        STATUS       PORTS     NAMES
36af093ee5ec   mysql:5.7.37   "docker-entrypoint.s..."   7 months ago   Up 2 hours             ruoyi-mysql

从这个命令中可以看出PORTS没有映射信息了。

原因猜测

  1. 我使用的archlinux,会不会某次更新导致了docker出BUG了?
  2. 因为我偶尔会在本地在启动一个3306端口的数据库,可能导致端口冲突。理论上只会提示报错,不应该会影响 啊。

解决办法

目前没找到完美解决,仅供参考。

我是把我的mysql数据库导出,重新在创建一个容器。

如果你有更好的方法,欢迎评论区告诉我。

相关推荐
极客先躯16 小时前
高级java每日一道面试题-2025年11月17日-容器与虚拟化题[Dockerj]-请解释容器和虚拟机的本质区别,从架构层面详细说明。
java·docker·架构
海兰17 小时前
Elastic 基于 Agentic 架构与 MCP 的 Kubernetes 智能可观测性深度解析
elasticsearch·容器·架构·kubernetes
米高梅狮子1 天前
05.Kubernetes Volume和Kubernetes ConfigMap
云原生·容器·kubernetes
MAVER1CK1 天前
Install VNC in Docker container
运维·docker·容器
阿正的梦工坊1 天前
Registry是什么意思?镜像仓库
docker
亚空间仓鼠1 天前
Kubernetes技术入门与实践(二):常用命令
云原生·容器·kubernetes
LSL666_1 天前
3 安装docker
运维·docker·容器
LSL666_1 天前
4 Docker 镜像安装与容器启动
运维·docker·容器
安逸sgr1 天前
Hermes Agent + Obsidian 打造第二大脑(三):Docker 部署详解——从零到生产环境的完整实战指南!
运维·docker·容器·obsidian·hermes·hermesagent
小熊吃保安2 天前
Excel下载变成了ZIP?Docker 容器里的 Content-Type 离奇失踪案
docker·go