我正在使用带有sequelize,docker和mysql的节点编写应用程序。当试图连接到sequelize时我不知何故仅限于使用端口3306,如果我更改“config.db.details”中的端口,我会收到以下错误:
Unhandled rejection SequelizeConnectionRefusedError: connect ECONNREFUSED 172.18.0.5:3300
连接到sequelize时,我使用以下配置:
config.db = {
user: 'root',
password: 'pass',
name: 'ticketgo'
};
config.db.details = {
host: 'database',
port: 3300
};
Docker.yml文件:
version: '3'
services:
nginx-proxy:
image: jwilder/nginx-proxy
ports:
- "80:80"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
client:
build: ./client
ports:
- "3001:3000"
volumes:
- "./client:/app"
environment:
- VIRTUAL_HOST=ticketgo.local
server:
build: ./server
ports:
- "3000:3000"
volumes:
- "./server/src:/app/src"
links:
- "database"
environment:
- VIRTUAL_HOST=api.ticketgo.local
database:
image: mysql
environment:
MYSQL_DATABASE: "ticketgo"
MYSQL_ROOT_PASSWORD: "pass"
volumes:
- "./sql:/docker-entrypoint-initdb.d"
adminer:
image: "adminer"
ports:
- "4444:8080"
links:
- "database"
任何帮助深表感谢!
需要为数据库设置端口:
database:
image: mysql
environment:
MYSQL_DATABASE: "ticketgo"
MYSQL_ROOT_PASSWORD: "pass"
volumes:
- "./sql:/docker-entrypoint-initdb.d"
ports:
- "3306:3300"