Update docker-compose to use postgres container (#10594)
There is no reason to use a custom image for postgres anymore as we have migrated out pg_graphql postgres extension
This commit is contained in:
@ -66,14 +66,12 @@ services:
|
|||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
db:
|
db:
|
||||||
image: twentycrm/twenty-postgres-spilo:${TAG:-latest}
|
image: postgres:16
|
||||||
volumes:
|
volumes:
|
||||||
- db-data:/home/postgres/pgdata
|
- db-data:/var/lib/postgresql/data
|
||||||
environment:
|
environment:
|
||||||
PGUSER_SUPERUSER: ${PG_DATABASE_USER:-postgres}
|
POSTGRES_USER: ${PG_DATABASE_USER:-postgres}
|
||||||
PGPASSWORD_SUPERUSER: ${PG_DATABASE_PASSWORD:-postgres}
|
POSTGRES_PASSWORD: ${PG_DATABASE_PASSWORD:-postgres}
|
||||||
ALLOW_NOSSL: "true"
|
|
||||||
SPILO_PROVIDER: "local"
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: pg_isready -U ${PG_DATABASE_USER:-postgres} -h localhost -d postgres
|
test: pg_isready -U ${PG_DATABASE_USER:-postgres} -h localhost -d postgres
|
||||||
interval: 5s
|
interval: 5s
|
||||||
|
|||||||
@ -7,11 +7,6 @@ import { camelToSnakeCase, performQuery } from './utils';
|
|||||||
rawDataSource
|
rawDataSource
|
||||||
.initialize()
|
.initialize()
|
||||||
.then(async () => {
|
.then(async () => {
|
||||||
await performQuery(
|
|
||||||
'CREATE EXTENSION IF NOT EXISTS "vector"',
|
|
||||||
'create extension "vector (pgvector)"',
|
|
||||||
);
|
|
||||||
|
|
||||||
await performQuery(
|
await performQuery(
|
||||||
'CREATE SCHEMA IF NOT EXISTS "public"',
|
'CREATE SCHEMA IF NOT EXISTS "public"',
|
||||||
'create schema "public"',
|
'create schema "public"',
|
||||||
|
|||||||
@ -35,6 +35,38 @@ yarn database:migrate:prod
|
|||||||
yarn command:prod upgrade
|
yarn command:prod upgrade
|
||||||
```
|
```
|
||||||
|
|
||||||
|
In this version, we have also switched to postgres:16 image in docker-compose.yml.
|
||||||
|
|
||||||
|
#### (Option 1) Database migration
|
||||||
|
|
||||||
|
Keeping the existing postgres-spilo image is fine, but you will have to freeze the version in your docker-compose.yml to be 0.43.0.
|
||||||
|
|
||||||
|
#### (Option 2) Database migration
|
||||||
|
|
||||||
|
If you want to migrate your database to the new postgres:16 image, please follow these steps:
|
||||||
|
|
||||||
|
1. Dump your database from the old postgres-spilo container
|
||||||
|
|
||||||
|
```
|
||||||
|
docker exec -it twenty-db-1 sh
|
||||||
|
pg_dump -U {YOUR_POSTGRES_USER} -d {YOUR_POSTGRES_DB} > databases_backup.sql
|
||||||
|
exit
|
||||||
|
docker cp twenty-db-1:/databases_backup.sql .
|
||||||
|
```
|
||||||
|
|
||||||
|
Make sure your dump file is not empty.
|
||||||
|
|
||||||
|
2. Upgrade your docker-compose.yml to use postgres:16 image as in the [docker-compose.yml](https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/docker-compose.yml) file.
|
||||||
|
|
||||||
|
3. Restore the database to the new postgres:16 container
|
||||||
|
|
||||||
|
```
|
||||||
|
docker cp databases_backup.sql twenty-db-1:/databases_backup.sql
|
||||||
|
docker exec -it twenty-db-1 sh
|
||||||
|
psql -U {YOUR_POSTGRES_USER} -d {YOUR_POSTGRES_DB} -f databases_backup.sql
|
||||||
|
exit
|
||||||
|
```
|
||||||
|
|
||||||
### v0.41.0 to v0.42.0
|
### v0.41.0 to v0.42.0
|
||||||
|
|
||||||
Upgrade your Twenty instance to use v0.42.0 image
|
Upgrade your Twenty instance to use v0.42.0 image
|
||||||
|
|||||||
Reference in New Issue
Block a user