15 Basic Docker Compose Commands for Beginners

15 Basic Docker Compose Commands for Beginners 1

Introduction

After writing the 25 Basic Docker Commands for Beginners article, it was only natural that I start exploring the functions of Docker Compose Commands. While running container using a docker run command is an easy way to get your containers up and running, using a docker-compose.yml file will ensure that your environmental variables and other parameters are saved making it easy to redeploy your containers across Docker host machines.

You can have multiple containers within a single Docker Compose file which will create a service that runs multiple containers. For example a container that runs a wiki, and a container that runs an SQL database for that wiki.

The docker compose commands in this article will be able to get you started with working with docker compose. This guide assumes that you already have Docker and Docker Compose installed on your system. If not, you can read the Quick and Easy Steps to Install Docker. Scroll to the bottom of the article and you will see the instructions to install Docker Compose.

Working with Docker Compose Services

Docker compose commands are available in the CLI that will allow you to start, stop and restart services, pause and resume services and pull images. Below are examples of those commands.

Create and Start all Containers, Volumes, Images, and Networks in a Docker Compose File

When you are ready to run your service, cd to the directory in which your docker-compose.yml file is located. Once you are in the directory with the compose file you can use the following command to run your service.

docker-compose up

When the above command is ran, docker-compose will search for a file named docker-compose.yml or docker-compose.yaml. Once it finds the file, it will read it and create the containers, volumes, images, and networks listed in the file and then run the containers.

Stop and Remove all Containers, Volumes, Images, and Networks in a Docker Compose File

In order to shut down your service, make sure you are in the directory of your docker-compose.yml file and run the following command.

docker-compose down

When this command is ran, docker-compose will search for a file named docker-compose.yml or docker-compose.yaml. Once the file is located, it will stop all of the containers in the service and remove the containers from your system.

If you want to remove internal volumes that were created, you can add the -v flag to the command. Below is an example of the command to remove internal volumes.

docker-compose down -v

Start Services in a Docker Compose File

In order to start services that are outlined in a Docker Compose File you can run the following command within the directory of your docker-compose file.

docker-compose start

This command will search for services listed in a docker-compose.yaml or docker-compose.yml file and start the containers listed in the service.

Stop Services in a Docker Compose File

If you need to stop the services that are outlined in your Docker Compose File you can run the below command within the directory of your docker-compose file.

docker-compose stop

This command will stop all services located in your docker-compose.yml file.

Pause Services in a Docker Compose File

In order to pause the containers in a service that is listed in a docker-compose file you can run the following command from within the directory of your docker-compose file.

docker-compose pause

Resume Services in a Docker Compose File

In order to resume paused containers in a service that is listed in a docker-compose file you can run the following command from within the directory of your docker-compose file.

docker-compose unpause

Restart Services in a Docker Compose File

To restart all of the containers in a service that is outlined in your docker-compose file, you can run the following command from inside the directory of your docker-compose file.

docker-compose restart

After this command is ran, all of your containers will restart.

Remove Stopped Containers in a Docker Compose File

This command will remove all containers that are listed in a docker-compose file that are stopped. You can run the following command from within the directory of our docker-compose.yml or docker-compose.yaml file.

docker-compose rm

Pull Images in a Docker Compose File

If you would like to pre-pull your container images prior to running your service or if you would like to pull updated images for your containers, you can run the following command.

docker-compose pull

This command will pull all of the container images that are outlined in your docker-compose file.

Monitoring Docker Compose Services

Docker Compose has commands that will allow you to view logs, resource usage and monitor events within the service outlined in your docker-compose.yml file.

List Containers Deployed from a Docker Compose File

If you need to view a list of containers that are deployed from your docker compose file, you can run the following command within the directory of your docker-compose file.

docker-compose ps

List images from a Docker Compose File

The below command will list all of the images that are on your system as part of your docker-compose file.

docker-compose images

View Logs from Running Containers

In order to view the logs from the containers you have running in a service you can run the following command within the directory of your docker-compose file.

docker-compose logs

This command will combine and output all of the logs from service containers that you have running.

View Resource Usage of Running Containers

This command is equivalent to running the top command. It will display resource usage of the containers that are deployed from a docker-compose file.

docker-compose top

Validate and View a docker-compose.yml File

In order to view and validate your docker-compose.yml file, you can run the below command from inside the directory in which your docker-compose file is stored.

docker-compose config

Additional Information

If you need additional information with any of these docker compose commands you can type append --help to the end of any of the above docker commands and type enter. If you need more information you can visit the Docker Documentation page.

If there are any other Docker Compose commands you would like to see added to this post, leave a comment below.

The post, 15 Easy Docker Compose Commands for Beginners, first appeared on Codeopolis.