手动安装mysql2软件包-错误

时间:2018-06-28 14:57:16

标签: javascript mysql node.js express sequelize.js

我正在尝试在我的应用中创建一个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

2 个答案:

答案 0 :(得分:0)

对于那些有此问题的人,我用npm intall -g mysql2解决了我的问题。如果在全球范围内安装sequelize-cli,则会发生问题。

答案 1 :(得分:-1)

我安装了mysql软件包解决了这个问题

npm install -g mysql2