每当我运行包含nodejs 11.10&mariadb的docker镜像时,都会出现以下错误:
当我使用mysql:latest
和mysql:5.6
时,也会发生相同的问题。这是我的联系:
TypeOrmModule.forRoot({
type: 'mariadb',
host: '172.17.0.1',
port: 3306,
username: 'nest',
password: 'secret',
database: 'nest',
entities: [__dirname + '/**/*.entity{.ts,.js}'],
synchronize: true,
}),
有没有其他人遇到过此问题,所以知道如何解决此问题?
谢谢!
最佳答案
发生此问题,因为的entities: [__dirname + '/**/*.entity{.ts,.js}'],
。因为__dirname
不会以某种方式解析到您的项目目录,而是''
,所以它将尝试扫描整个驱动器中的实体,并且显然没有权限这样做。
解决方法
无需扫描实体,而是明确列出它们:
entities: [UserEntity, ProductEntity],
如果您将Webpack用于hmr,则还可以尝试以下配置来正确解析
__dirname
:webpack.config.js:
node: {
__dirname: false,
},