add docker compose
This commit is contained in:
39
docker-compose.yml
Normal file
39
docker-compose.yml
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
version: '3.9'
|
||||||
|
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
container_name: nestjs-app
|
||||||
|
environment:
|
||||||
|
- NODE_ENV=production
|
||||||
|
- DB_HOST=${POSTGRES_HOST}
|
||||||
|
- DB_PORT=${POSTGRES_PORT}
|
||||||
|
- DB_USERNAME=${POSTGRES_USER}
|
||||||
|
- DB_PASSWORD=${POSTGRES_PASSWORD}
|
||||||
|
- DB_DATABASE=${POSTGRES_DB}
|
||||||
|
- DB_SSL=${DB_SSL}
|
||||||
|
- DB_SYNC=${DB_SYNC}
|
||||||
|
- PORT=${PORT}
|
||||||
|
ports:
|
||||||
|
- '3023:3023'
|
||||||
|
depends_on:
|
||||||
|
- db
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
db:
|
||||||
|
image: postgres:16.8-alpine3.20
|
||||||
|
container_name: postgres-db
|
||||||
|
environment:
|
||||||
|
POSTGRES_DB: ${POSTGRES_DB}
|
||||||
|
POSTGRES_USER: ${POSTGRES_USER}
|
||||||
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||||
|
volumes:
|
||||||
|
- pgdata:/var/lib/postgresql/data
|
||||||
|
ports:
|
||||||
|
- '5432:5432'
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
pgdata:
|
||||||
@@ -9,12 +9,12 @@ import { NotificationModule } from './notifications/notification.module';
|
|||||||
ConfigModule.forRoot(),
|
ConfigModule.forRoot(),
|
||||||
TypeOrmModule.forRoot({
|
TypeOrmModule.forRoot({
|
||||||
type: 'postgres',
|
type: 'postgres',
|
||||||
host: process.env.POSTGRES_HOST,
|
host: process.env.DB_HOST,
|
||||||
port: 5432,
|
port: parseInt(process.env.DB_PORT, 10),
|
||||||
ssl: process.env.POSTGRES_SSL === 'true',
|
ssl: process.env.DB_SSL === 'true',
|
||||||
username: process.env.POSTGRES_USER,
|
username: process.env.DB_USERNAME,
|
||||||
password: process.env.POSTGRES_PASSWORD,
|
password: process.env.DB_PASSWORD,
|
||||||
database: process.env.POSTGRES_DATABASE,
|
database: process.env.DB_DATABASE,
|
||||||
entities: [__dirname + '/**/*.entity{.ts,.js}'],
|
entities: [__dirname + '/**/*.entity{.ts,.js}'],
|
||||||
synchronize: process.env.DB_SYNC === 'true',
|
synchronize: process.env.DB_SYNC === 'true',
|
||||||
}),
|
}),
|
||||||
|
|||||||
Reference in New Issue
Block a user