From 41f44b4657d99e78d744956e10084bc7c5e54071 Mon Sep 17 00:00:00 2001 From: Joe Les Date: Mon, 9 Sep 2024 08:45:03 -0400 Subject: [PATCH 1/2] First module 2 check point --- .dockerignore | 4 ++++ Dockerfile | 22 ++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..746c9eb --- /dev/null +++ b/.dockerignore @@ -0,0 +1,4 @@ +.env +.git +.gitignore +node_modules diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..c42f76b --- /dev/null +++ b/Dockerfile @@ -0,0 +1,22 @@ +# using Node v10 +FROM node:10 + +# Create app directory +WORKDIR /usr/src/lafs + +# Install app dependencies +# A wildcard is used to ensure both package.json AND package-lock.json are copied +# where available (npm@5+) +COPY package*.json ./ + +RUN npm install +# If you are building your code for production +# RUN npm ci --only=production + +# Bundle app source +COPY . . + +# Expose port 3000 outside container +EXPOSE 4200 +# Command used to start application +CMD ["node", "server/server.js"] From b9a911a40aeb69fe319ced3ee33b47278021bbb7 Mon Sep 17 00:00:00 2001 From: Joe Les Date: Fri, 13 Sep 2024 11:09:26 -0400 Subject: [PATCH 2/2] Module 2 complete --- Dockerfile | 3 ++- docker-compose.yml | 29 +++++++++++++++++++++++++++++ server/datasources.development.js | 10 +++++----- 3 files changed, 36 insertions(+), 6 deletions(-) create mode 100644 docker-compose.yml diff --git a/Dockerfile b/Dockerfile index c42f76b..5ea7243 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,6 +17,7 @@ RUN npm install COPY . . # Expose port 3000 outside container -EXPOSE 4200 +EXPOSE 3000 + # Command used to start application CMD ["node", "server/server.js"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..b75490e --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,29 @@ +version: '3.7' +services: + # REST API running on Node JS container + app: + container_name: node-mean-api + restart: always + build: . + ports: + - '3000:3000' + # link this container to the Mongo DB container + links: + - mongo + # pass in environment variables for database host and name + environment: + - DB_HOST=mongo + - DB_NAME=mongodb + + # Mongo DB storage container + mongo: + container_name: lafs-db + image: 'mongo:4' + ports: + - '27017:27017' + +# Attach the external network to these containers +networks: + default: + external: + name: cs470-net diff --git a/server/datasources.development.js b/server/datasources.development.js index 05c14ba..470dad7 100644 --- a/server/datasources.development.js +++ b/server/datasources.development.js @@ -1,11 +1,11 @@ module.exports = { mongodb: { connector: 'mongodb', - hostname: process.env.DB_HOST, - port: process.env.DB_PORT, - user: process.env.DB_USER, - password: process.env.DB_PASSWORD, - database: process.env.DB_NAME, + hostname: process.env.DB_HOST || 'localhost', + port: process.env.DB_PORT || 27017, + user: process.env.DB_USER || '', + password: process.env.DB_PASSWORD || '', + database: process.env.DB_NAME || 'mongodb', url: process.env.DB_URL } };