Я использую docker -композицию для создания MariaDB / NodeJS:
version: '3'
services:
app:
image: node:alpine
volumes:
- ./:/app
working_dir: /app
environment:
NODE_ENV: development
ports:
- 3001:3001
command: npm run dev
mysql_database:
image: mariadb:latest
restart: always
ports:
- "3306:3306"
expose:
- 3306
volumes:
- ./dbdata:/var/lib/mysql:rw
- ./database.sql:/docker-entrypoint-initdb.d/database.sql
environment:
MYSQL_ROOT_PASSWORD: 1234
Приложение node.js и сервер mysql работают правильно (я могу подключиться к ним независимо: nodejs -> localhost: 3001 и MySQL WorkBrench, указывающий на localhost: 3306), , но соединение между двумя серверами не работает . Показать ошибку: connect ECONNREFUSED 127.0.0.1:3306 NodeJS applicationacion require ('mysql'):
var connection = mysql.createConnection({
connectionLimit: 10,
host: 'localhost',
user: 'root',
password: '1234',
database: 'biologia',
port: '3306',
Все это прекрасно работает без использования docker -составления или развертывания mysql docker и запускать по локальной сети (без docker) nodejs, указывая на mysql docker.