我正在尝试在我的应用中创建一个Sequelize实例。当我使用docker-compose生成并运行应用程序时,它要求我手动下载mysql2,即使我尝试使用--save和--g下载它,也无法正常工作。为什么会发生此错误,我该如何解决?
const sequelize = new Sequelize('test', 'root', 'root', {
host: database,
port: 3307,
dialect: 'mysql'
});
使用以下docker-compose.yml文件:
version: '3'
services:
mongo:
image: mongo:3.6
web:
build: .
ports:
- "3000:3000"
environment:
- MONGODB_URI=mongodb://mongo:27017/test
links:
- mongo
depends_on:
- mongo
volumes:
- .:/starter
- /starter/node_modules
database:
image: mysql
environment:
MYSQL_DATABASE: "ticketgo"
MYSQL_ROOT_PASSWORD: "pass"
volumes:
- "./sql:/docker-entrypoint-initdb.d"
ports:
- "3307:3307"
adminer:
image: "adminer"
ports:
- "8080:8080"
links:
- "database"
我收到此错误:
Error: Please install mysql2 package manually
答案 0 :(得分:0)
对于那些有此问题的人,我用npm intall -g mysql2
解决了我的问题。如果在全球范围内安装sequelize-cli,则会发生问题。
答案 1 :(得分:-1)
我安装了mysql软件包解决了这个问题
npm install -g mysql2