mysql - 将 nodejs api 连接到 mariadb docker 容器
问题描述
无法从 nodejs 连接到 mariadb 容器。这是我的代码:
const mariadb = require("mariadb");
const connectMysql = async () => {
try {
const pool = mariadb.createPool({
host: "localhost",
user: "root",
database: "gamifydb",
port: "3306",
password:"password"
});
let conn = await pool.getConnection();
global.conn = conn;
console.log("mariadb db connected")
} catch (error) {
throw error;
}
};
module.exports = { connectMysql };
容器:
你们能帮忙吗?
解决方案
尝试更改localhost
为172.17.0.1
并再次运行。
172.17.0.1
是容器网关的 IP 地址。
推荐阅读
- android - 如何反编译aab AndroidManifest.xml
- pandas - 如何在 Pandas groupby 对象上应用 stack() 函数
- c++ - 如何从 char * 转换为“WTF::String”?
- bash - 将 WebVTT 文件从 Youtube 转换为纯文本
- javascript - 如何确保使用 Node.js 的请求模块取回 cookie?
- excel - 循环用于在常规枢轴上工作的切片器选择,但不适用于功率枢轴
- html - 如何使用 HTML 和 CSS 修复导航栏汉堡
- python - 尝试访问 Django 应用程序中上传的文件时出错
- node.js - 为什么没有用新余额更新商店文件?节点+猫鼬快递
- java - inverseJoinColumns 是强制性的吗?