【部署篇】Docker配置MySQL容器+远程连接

一、前言

上篇文章在部署nestjs时,由于docker访问不了主机的localhost,所以无法连接主机数据库。所以我们只能在docker中额外配置一个数据库,映射到主机上,然后可以通过ip地址访问。

在本篇文章我们会在docker中创建一个mysql,毕竟使用navigator连接测试。

二、Docker配置MySQL容器(全流程)

步骤 1: 拉取 MySQL 镜像

首先,使用以下命令从 Docker Hub 拉取 MySQL 镜像:

bash 复制代码
docker pull mysql

步骤 2: 运行 MySQL 容器

使用以下命令创建并运行 MySQL 容器:

bash 复制代码
docker run -d \
  --name=mysql-container \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -e MYSQL_DATABASE=test \
  -e MYSQL_USER=root \
  -e MYSQL_PASSWORD=root \
  -p 3307:3306 \
  mysql

ps: 由于本机数据库占着3306端口,这里换成3307

在上述命令中:

  • -d 表示在后台运行容器。
  • --name=mysql-container 给容器命名为 mysql-container,你可以根据需要自定义名称。
  • -e 选项用于设置环境变量,包括 root 用户密码、数据库名称、用户名和用户密码。
  • -p 3306:3306 将 MySQL 的默认端口映射到主机的端口 3306。你可以根据需要选择其他端口。

步骤 3: 连接到 MySQL 容器

bash 复制代码
docker exec -it mysql-container mysql -uroot -p

系统将提示你输入 root 用户的密码,输入之后你将进入 MySQL 的命令行界面。

步骤4:使用navicat测试

报错的话需要去阿里云打开对应的端口


再次尝试即可连接成功!

相关推荐
2501_941805933 小时前
深入解析现代多语言后端架构设计:Python、Java、C++与Go在高性能服务中的实践
运维
F***E2394 小时前
如何安装配置Goland并使用固定公网地址SSH远程连接本地服务器
运维·服务器·ssh
序属秋秋秋4 小时前
《Linux系统编程之进程环境》【环境变量】
linux·运维·服务器·c语言·c++·操作系统·系统编程
Baklib梅梅4 小时前
员工手册:保障运营一致性与提升组织效率的核心载体
前端·ruby on rails·前端框架·ruby
Token_w4 小时前
openGauss:全密态数据库的金融级安全实践
数据库·安全·金融
合作小小程序员小小店4 小时前
图书管理系统,基于winform+sql sever,开发语言c#,数据库mysql
开发语言·数据库·sql·microsoft·c#
ss2734 小时前
020:共享锁深度解析:从AQS原理到高并发实践
数据库·redis·缓存
云边有个稻草人4 小时前
手机也能控 Linux?Cpolar+JuiceSSH 搞定内网远程
运维·服务器·cpolar
a***56064 小时前
node.js下载、安装、设置国内镜像源(永久)(Windows11)
node.js
字节拾光录4 小时前
手机号存储避坑指南:从20亿级数据库实践看,为什么VARCHAR才是终极答案
java·数据库·oracle