Создан postgres контейнер для docker, смонтированы базовые настройки c для knex migration: lateset
, но база данных не получает миграцию.
Версия Knex: последняя ОС: Ubuntu 18.04
не вижу проблем вообще, но я не знаю, почему не обновляется база данных в postgres, в моем docker контейнере.
Как можно Я мигрирую самым простым способом, используя docker контейнер для подключения моего postgres, и использую knex для миграции на него?
ВЫХОД при выполнении sudo yarn knex migrate:latest
juliano@pc:~/Desktop/TDD-typescript-backend-ObjectionJs$ sudo yarn knex migrate: latestyarn run v1.22.0
$ /home/juliano/Desktop/TDD-typescript-backend-ObjectionJs/node_modules/.bin/knex migrate: latest
Requiring external module ts-node/register
Done in 0.67s.
my knexfile.ts:
require('dotenv').config({
path: process.env.NODE_ENV === 'test' ? '.env.test' : '.env'
})
module.exports = {
client: 'postgresql',
connection: {
host: process.env.DB_HOST,
username: process.env.DB_USER,
password: process.env.DB_PASS,
database: process.env.DB_NAME,
options: {
port: process.env.DB_PORT
}
}
}
my .env:
DB_HOST=127.0.0.1
DB_USER=postgres
DB_PASS=docker
DB_NAME=database
DB_PORT=5432
моя миграция:
const tableName = 'users'
// TYPE KNEX AND TABLE?
exports.up = function (knex:any) {
return knex.schema
.createTable(tableName, (table:any) => {
table.increments('id').primary()
table.string('name')
table.string('email')
table.string('password_hash')
table.date('created_at')
table.date('updated_at')
})
}
exports.down = function (knex:any) {
return knex.schema
.dropTable('users')
}
my docker ps:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8e552f8788b1 postgres "docker-entrypoint.s…" About an hour ago Up About an hour 0.0.0.0:5432->5432/tcp database