dockerized the app successfully
This commit is contained in:
parent
0fbbecc1d1
commit
38f33881e0
8 changed files with 42 additions and 3745 deletions
12
Dockerfile
12
Dockerfile
|
@ -1,13 +1,13 @@
|
|||
# Build stage
|
||||
FROM node:18.18-alpine
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY . .
|
||||
|
||||
RUN npm i -g pnpm
|
||||
|
||||
EXPOSE 3000
|
||||
ENV NODE_ENV=production
|
||||
|
||||
COPY . /app
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
CMD docker_entrypoint.sh
|
||||
RUN chmod +x /app/docker_entrypoint.sh
|
||||
ENTRYPOINT ["/app/docker_entrypoint.sh"]
|
|
@ -1,5 +1,22 @@
|
|||
services:
|
||||
|
||||
app:
|
||||
build: .
|
||||
hostname: app
|
||||
depends_on:
|
||||
- mongodb
|
||||
- redis
|
||||
environment:
|
||||
- DATABASE_URL=mongodb://temp-root-username:temp-password@mongodb/chat_projetweb?authSource=admin
|
||||
- JWT_SECRET=ba63466f102443f4bb6f3670891358bc4488d0c717f6ebcd3ee3c5144e55fe2d
|
||||
ports:
|
||||
- "3000:3000"
|
||||
networks:
|
||||
- app_network
|
||||
volumes:
|
||||
- .:/usr/src/app
|
||||
- /usr/src/app/node_modules
|
||||
|
||||
mongodb:
|
||||
build: ./mongodb_rs
|
||||
hostname: mongodb
|
||||
|
@ -8,7 +25,7 @@ services:
|
|||
- MONGO_INITDB_ROOT_USERNAME=temp-root-username
|
||||
- MONGO_INITDB_ROOT_PASSWORD=temp-password
|
||||
- MONGO_INITDB_DATABASE=chat_projetweb
|
||||
- MONGO_REPLICA_HOST=localhost
|
||||
- MONGO_REPLICA_HOST=mongodb
|
||||
- MONGO_REPLICA_PORT=27017
|
||||
ports:
|
||||
- "27017:27017"
|
||||
|
|
|
@ -5,8 +5,9 @@ pnpm install
|
|||
pnpm prisma generate
|
||||
|
||||
pnpm run build
|
||||
pnpm prune --prod
|
||||
|
||||
pnpx prisma db push
|
||||
|
||||
node build/index.js
|
||||
ls
|
||||
|
||||
node build
|
|
@ -32,11 +32,11 @@
|
|||
"tailwind-variants": "^0.3.0",
|
||||
"tailwindcss": "^3.4.9",
|
||||
"typescript": "^5.0.0",
|
||||
"typescript-eslint": "^8.0.0",
|
||||
"vite": "^5.0.3"
|
||||
"typescript-eslint": "^8.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@prisma/client": "^5.22.0",
|
||||
"@sveltejs/adapter-node": "^5.2.10",
|
||||
"@types/jsonwebtoken": "^9.0.7",
|
||||
"@types/node": "^22.10.1",
|
||||
"argon2": "^0.41.1",
|
||||
|
@ -48,6 +48,7 @@
|
|||
"socket.io": "^4.8.1",
|
||||
"socket.io-client": "^4.8.1",
|
||||
"svelte-radix": "^2.0.1",
|
||||
"vite": "^5.0.3",
|
||||
"winston": "^3.17.0"
|
||||
}
|
||||
}
|
||||
|
|
3722
pnpm-lock.yaml
generated
3722
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load diff
|
@ -5,8 +5,8 @@
|
|||
// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init
|
||||
|
||||
generator client {
|
||||
provider = "prisma-client-js"
|
||||
binaryTargets = ["debian-openssl-1.1.x", "linux-musl-openssl-3.0.x"]
|
||||
provider = "prisma-client-js"
|
||||
binaryTargets = ["debian-openssl-1.1.x", "linux-musl-openssl-3.0.x", "linux-musl-arm64-openssl-3.0.x"]
|
||||
}
|
||||
|
||||
datasource db {
|
||||
|
@ -15,14 +15,14 @@ datasource db {
|
|||
}
|
||||
|
||||
model User {
|
||||
id String @id @default(auto()) @map("_id") @db.ObjectId
|
||||
username String @unique
|
||||
profilePicture String @default("default.png")
|
||||
surname String
|
||||
name String
|
||||
email String @unique
|
||||
password String
|
||||
messages Message[]
|
||||
id String @id @default(auto()) @map("_id") @db.ObjectId
|
||||
username String @unique
|
||||
profilePicture String @default("default.png")
|
||||
surname String
|
||||
name String
|
||||
email String @unique
|
||||
password String
|
||||
messages Message[]
|
||||
|
||||
@@map("users") // Table name in DB
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { createClient } from 'redis';
|
||||
|
||||
const client = await createClient({
|
||||
url: process.env.REDIS_URL || 'redis://localhost:6379'
|
||||
url: process.env.REDIS_URL || 'redis://redis-server:6379'
|
||||
});
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { mdsvex } from 'mdsvex';
|
||||
import adapter from '@sveltejs/adapter-auto';
|
||||
import adapter from '@sveltejs/adapter-node';
|
||||
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';
|
||||
|
||||
/** @type {import('@sveltejs/kit').Config} */
|
||||
|
|
Loading…
Add table
Reference in a new issue