diff --git a/src/server/.dockerignore b/src/server/.dockerignore new file mode 100644 index 0000000..b512c09 --- /dev/null +++ b/src/server/.dockerignore @@ -0,0 +1 @@ +node_modules \ No newline at end of file diff --git a/src/server/Dockerfile b/src/server/Dockerfile new file mode 100644 index 0000000..eb29f6b --- /dev/null +++ b/src/server/Dockerfile @@ -0,0 +1,19 @@ +FROM node:20 + +# Create app directory +WORKDIR /usr/src/app + +# Install app dependencies +# A wildcard is used to ensure both package.json AND package-lock.json are copied +COPY package*.json ./ + +RUN npm update +RUN npm install +# If you are building your code for production +# RUN npm ci --only=production + +# Bundle app source +COPY . . + +EXPOSE 8080 +CMD [ "npm", "run", "start" ] \ No newline at end of file diff --git a/src/server/README.md b/src/server/README.md new file mode 100644 index 0000000..ca1a3f6 --- /dev/null +++ b/src/server/README.md @@ -0,0 +1,9 @@ +# Web Sockets Server + +## Deploying + +Use Docker to deploy this. + +Navigate to this folder and run `docker build -t estimation-ws-server .` to build the image. + +Run it using `docker run -it --rm -p 8080:8080 estimation-ws-server` \ No newline at end of file diff --git a/src/server/websocket.ts b/src/server/websocket.ts index b5efa6d..bbe5115 100644 --- a/src/server/websocket.ts +++ b/src/server/websocket.ts @@ -7,7 +7,7 @@ import { ChangeEstimateMessage } from './classes/messages/ChangeEstimateMessage. import { SelectEstimateMessage } from './classes/messages/SelectEstimateMessage.js'; const app = express(); -const port = process.env.PORT || 3000; +const port = process.env.PORT || 8080; function onSocketPreError(e: Error) { console.log(e);