From 6e00b263fa8ebb249c5f05533f19bcdc1dd6a33a Mon Sep 17 00:00:00 2001 From: rakeshSgr <rakeshkumar@rakeshs-MacBook-Air.local> Date: Thu, 12 Jan 2023 16:25:22 +0530 Subject: [PATCH 1/2] docker compose fix --- .dockerignore | 5 +++-- README.md | 18 +++++++++--------- docker-compose.yml | 45 +++++++++++++++++++-------------------------- 3 files changed, 31 insertions(+), 37 deletions(-) diff --git a/.dockerignore b/.dockerignore index 321118537..37110db0f 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,2 +1,3 @@ -node_modules -.env.sample \ No newline at end of file +/src/node_modules +.env.sample +.env diff --git a/README.md b/README.md index 439d0815c..77bf3e7b9 100644 --- a/README.md +++ b/README.md @@ -70,21 +70,21 @@ Elevate services can be setup in local using three methods: ### Steps 1. Install **Docker** & **Docker-Compose**. -2. Clone all elevate services into a common directory. + +2. To create/start all containers: + ``` - ./ELEVATE/ - ├── mentoring - ├── notification - ├── scheduler - └── user + ELEVATE/mentoring$ docker-compose up ``` -3. To create/start all containers: + + You can pass .env file to docker images of elevate service by using the below command ``` - ELEVATE/mentoring$ docker-compose up + ELEVATE/mentoring$ mentoring_env=".env path" users_env=".env path" notification_env=".env file path" docker-compose up + ``` -4. To remove all containers & networks: +3. To remove all containers & networks: ``` ELEVATE/mentoring$ docker-compose down diff --git a/docker-compose.yml b/docker-compose.yml index 7f7609482..8bdcfb1c6 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,35 +1,32 @@ version: '3' services: zookeeper: - image: 'bitnami/zookeeper:3.8.0' + image: 'confluentinc/cp-zookeeper:7.3.0' ports: - '2181:2181' environment: - ALLOW_ANONYMOUS_LOGIN=yes + - ZOOKEEPER_CLIENT_PORT=2181 + - ZOOKEEPER_TICK_TIME=2000 networks: - elevate_net - volumes: - - zookeeper-data:/bitnami/zookeeper logging: driver: none kafka: - image: 'bitnami/kafka:3.1.0' + image: 'confluentinc/cp-kafka:7.3.0' ports: - '9092:9092' environment: - - KAFKA_BROKER_ID=1 - - KAFKA_CFG_LISTENERS=CLIENT://:9092,EXTERNAL://:9093 - - KAFKA_CFG_ADVERTISED_LISTENERS=CLIENT://kafka:9092,EXTERNAL://localhost:9093 - - KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181 - - ALLOW_PLAINTEXT_LISTENER=yes - - KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CLIENT:PLAINTEXT,EXTERNAL:PLAINTEXT - - KAFKA_CFG_INTER_BROKER_LISTENER_NAME=CLIENT + KAFKA_BROKER_ID: 1 + KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 + KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,PLAINTEXT_HOST://localhost:9092 + KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT + KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT + KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 depends_on: - zookeeper networks: - elevate_net - volumes: - - kafka-data:/bitnami/kafka logging: driver: none mongo: @@ -53,10 +50,7 @@ services: logging: driver: none mentoring: - build: './' - image: elevate/mentoring:1.0 - volumes: - - ./src/:/var/src + image: shikshalokamqa/elevate-mentoring:2.2 ports: - '3000:3000' command: ['nodemon', 'app.js'] @@ -69,11 +63,10 @@ services: - mongo networks: - elevate_net + env_file: + - ${mentoring_env} user: - build: '../user/' - image: elevate/user:1.0 - volumes: - - ../user/src/:/var/src + image: shikshalokamqa/elevate-user:2.2 ports: - '3001:3001' command: ['nodemon', 'app.js'] @@ -87,11 +80,10 @@ services: - redis networks: - elevate_net + env_file: + - ${users_env} notification: - build: '../notification/' - image: elevate/notification:1.0 - volumes: - - ../notification/src/:/var/src + image: shikshalokamqa/elevate-notification:2.2 ports: - '3002:3002' command: ['nodemon', 'app.js'] @@ -99,9 +91,10 @@ services: - KAFKA_HOST=kafka:9092 depends_on: - kafka - - mongo networks: - elevate_net + env_file: + - ${notification_env} networks: elevate_net: external: false From 5b43cf72c494f4d6b87ef587801e5db2f02eb979 Mon Sep 17 00:00:00 2001 From: rakeshSgr <rakeshkumar@rakeshs-MacBook-Air.local> Date: Thu, 12 Jan 2023 16:37:43 +0530 Subject: [PATCH 2/2] docker images chnages --- README.md | 2 +- docker-compose.yml | 27 +++++++++++++-------------- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 77bf3e7b9..46caa38be 100644 --- a/README.md +++ b/README.md @@ -80,7 +80,7 @@ Elevate services can be setup in local using three methods: You can pass .env file to docker images of elevate service by using the below command ``` - ELEVATE/mentoring$ mentoring_env=".env path" users_env=".env path" notification_env=".env file path" docker-compose up + ELEVATE/mentoring$ mentoring_env=".env path" users_env=".env path" notification_env=".env path" scheduler=".env path" docker-compose up ``` diff --git a/docker-compose.yml b/docker-compose.yml index 86bfca653..286d1f1aa 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -45,7 +45,6 @@ services: volumes: - mongo-data:/data/db - logs:/var/log/mongodb - redis: image: 'redis:7.0.0' restart: 'always' @@ -108,17 +107,17 @@ services: - elevate_net env_file: - ${notification_env} + scheduler: - build: '../scheduler/' - image: elevate/scheduler:1.0 - volumes: - - ../scheduler/src/:/var/src + image: shikshalokamqa/elevate-scheduler:2.2 ports: - '4000:4000' command: ['nodemon', 'app.js'] environment: - KAFKA_URL=kafka:9092 - MONGODB_URL=mongodb://mongo:27017/elevate-scheduler + env_file: + - ${scheduler_env} depends_on: - kafka - mongo @@ -203,12 +202,12 @@ services: - elasticsearch - mentoring - user -networks: - elevate_net: - external: false -volumes: - zookeeper-data: - kafka-data: - mongo-data: - fbdata: - logs: + networks: + elevate_net: + external: false + volumes: + zookeeper-data: + kafka-data: + mongo-data: + fbdata: + logs: