提问人:Mark account 提问时间:11/11/2023 更新时间:11/11/2023 访问量:12
尝试使用 node.js javascript 文件连接到 Mysql 数据库的 docker-compose 实例
Attempting to connect to docker-compose instance of Mysql database with node.js javascript file
问:
我的 node.js 应用程序似乎无法找到 mysql 数据库。几秒钟后,它也会在使用 docker-compose up -d 运行后继续退出。 就我而言,我的docker-compose.yml是完全正确且没有错误的,因为数据库运行没有错误。 我已经尝试了所有方法,但完全被难住了。
这是我的docker-compose.yml:
version: '3.9'
services:
mysql1:
image: mysql:5.7
container_name: db1
environment:
MYSQL_ROOT_PASSWORD: admin
MYSQL_DATABASE: 'db'
MYSQL_USER: 'user'
MYSQL_PASSWORD: 'password'
node1:
build: .
container_name: nodejs1
ports:
- "80:8080"
depends_on:
mysql1:
condition: service_started
stdin_open: true
tty: true
和我的服务器.js:
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const port = 8080;
var mysql = require('mysql');
var connection = mysql.createConnection({
host: 'mysql1',
user : 'user',
password : 'password',
database: 'db'
});
connection.connect();
app.get('/init', (req,res) => {
connection.query(`CREATE DATABASE posts`,
function (error,result) {
if (error) console.log(error);
});
connection.query(`USE posts`,
function (error, results) {
if (error) console.log(error);
});
connection.query(`CREATE TABLE mytable
( id int unsigned NOT NULL auto_increment, username varchar(100)
NOT NULL,
email varchar(100) NOT NULL,
PRIMARY KEY (id)
)`, function (error,result) {
});
});
app.listen(port, () => {
console.log(`Server is running on port ${port}`);
});
答: 暂无答案
评论