Wt is Docker compose - amresh087/newronaRepos GitHub Wiki

  • The docker compose is tool for defining and for running multi container docker application.

  • In docker compose used yml file to configure application service (docker-compose.yml)

  • In docker compose you can start all services with a single command (docker-compose up)

  • In docker compose you can stop all service with single command (docker-compose down)

  • you can scale up selected services when required

Step 1--> Install docker-compose in Linux or EC2 machine

docker compose official git Repo

command for install docker-compose

      sudo curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

      sudo chmod +x /usr/local/bin/docker-compose

docker-compose -v

docker-compose version

Step 2 --> create docker compose file at any location on our system and file name docker-compose.yml

on terminal / putty

       pwd

       cd ..

       sudo mkdir dockercomposefile

       cd dockercomposefile

       sudo touch docker-compose.yml

       ls

       sudo vi docker-compose.yml

       press i (for insert)

       version: '3'
       services:
         web:
           image: nginx
           ports:
           - "9090:80"
         database:
           image: redis

Now need save file so press esc button

:wq! then enter

Note --> here in ports section 80 is web server and my host-server 9090

Now you can check data in the file by using command sudo cat filename

sudo cat docker-compose.yml

Step 3 --> check validity of the file by command docker-compose config if not throw errors show file content then yml file is good. Otherwise problem in yml file

Step 4 --> Run docker compose file

  1. docker-compose up

  2. docker-compose down

Scale services

docker-compose up -d --scale database = 4

in above command database is defined docker-compose as service so redis run 4 container