Difference between revisions of "Docker-compose"

From wikieduonline
Jump to navigation Jump to search
Tags: Mobile web edit, Mobile edit
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
{{lowercase}}
 
[[wikipedia:Docker_(software)#Tools|Docker Compose]]<ref>https://docs.docker.com/compose/</ref> is a tool available since October 2014 for defining and running multi-[[container]] [[Docker]] applications.
 
[[wikipedia:Docker_(software)#Tools|Docker Compose]]<ref>https://docs.docker.com/compose/</ref> is a tool available since October 2014 for defining and running multi-[[container]] [[Docker]] applications.
  
 
Rules are defined in <code>[[docker-compose.yml]]</code> and executed by running <code>[[docker-compose up]]</code> command.
 
Rules are defined in <code>[[docker-compose.yml]]</code> and executed by running <code>[[docker-compose up]]</code> command.
  
<code>docker-compose</code> allows to define start order dependencies between containers.
+
<code>docker-compose</code> allows to define start order [[dependencies]] between [[containers]].
  
 
For reference of valid options for docker compose check: https://docs.docker.com/compose/compose-file/
 
For reference of valid options for docker compose check: https://docs.docker.com/compose/compose-file/
  
 
== Installation ==
 
== Installation ==
* <code>[[brew]] install docker-compose</code>
+
Available for [[macOS]], [[Linux]] and [[Windows]]
 +
* macOS: <code>[[brew install]] docker-compose</code>
 +
* Linux:
 +
** <code>[[pip install docker-compose]]</code>
 +
** <code>[[apt install docker-compose]]</code>
  
 
== Basic commands ==
 
== Basic commands ==
* <code>docker-compose -h</code> (for list of commands and options)
+
* <code>[[docker-compose -h]]</code> (for list of commands and options)
  
 
* <code>docker-compose --log-level</code>
 
* <code>docker-compose --log-level</code>
  
 
* <code>[[docker-compose up]]</code><ref>https://docs.docker.com/compose/reference/up/</ref> Builds, (re)creates, starts, and attaches to containers for a service.
 
* <code>[[docker-compose up]]</code><ref>https://docs.docker.com/compose/reference/up/</ref> Builds, (re)creates, starts, and attaches to containers for a service.
 +
:: <code>[[docker-compose up]] SERVICE_NAME</code>
 
:: <code>[[docker-compose up]] -d</code>
 
:: <code>[[docker-compose up]] -d</code>
 
:::<code>-d daemon</code>
 
:::<code>-d daemon</code>
Line 22: Line 28:
 
: <code>YOUR_VARIABLE=YOUR_VALUE docker-compose up</code><ref>https://www.oreilly.com/ideas/3-docker-compose-features-for-improving-team-development-workflow</ref>
 
: <code>YOUR_VARIABLE=YOUR_VALUE docker-compose up</code><ref>https://www.oreilly.com/ideas/3-docker-compose-features-for-improving-team-development-workflow</ref>
  
* <code>docker-compose -p NAME  --project-name</code>
+
* <code>[[docker-compose -p]] YOUR_PROJECT_NAME or [[docker-compose --project-name YOUR_PROJECT_NAME</code>
  
 
Logs:
 
Logs:
Line 33: Line 39:
 
== All commands ==
 
== All commands ==
 
<code>docker-compose</code><ref>https://docs.docker.com/compose/reference/</ref>
 
<code>docker-compose</code><ref>https://docs.docker.com/compose/reference/</ref>
* <code>docker-compose build</code>
+
* <code>[[docker-compose build]]</code>
* <code>docker-compose bundle</code>
+
* <code>[[docker-compose bundle]]</code>
 
* <code>[[docker-compose config]]</code>
 
* <code>[[docker-compose config]]</code>
 
* <code>[[docker-compose create]]</code> (deprecated)
 
* <code>[[docker-compose create]]</code> (deprecated)
 
* <code>[[docker-compose down]]</code>
 
* <code>[[docker-compose down]]</code>
::<code>docker-compose down --remove-orphans</code>
+
::<code>[[docker-compose down --remove-orphans]]</code>
 
::<code>docker-compose down --volumes</code>
 
::<code>docker-compose down --volumes</code>
 
* <code>[[docker-compose events]]</code>
 
* <code>[[docker-compose events]]</code>
Line 56: Line 62:
 
*<code>docker-compose scale</code>
 
*<code>docker-compose scale</code>
 
*<code>[[docker-compose start]]</code>
 
*<code>[[docker-compose start]]</code>
*<code>docker-compose stop</code>  
+
*<code>[[docker-compose stop]]</code>  
 
*<code>[[docker-compose top]]</code> (Feb 2017) <ref>https://github.com/docker/compose/blob/master/CHANGELOG.md#1110-2017-02-08</ref>
 
*<code>[[docker-compose top]]</code> (Feb 2017) <ref>https://github.com/docker/compose/blob/master/CHANGELOG.md#1110-2017-02-08</ref>
 
*<code>docker-compose unpause</code>
 
*<code>docker-compose unpause</code>
 
*<code>[[docker-compose up]]</code>
 
*<code>[[docker-compose up]]</code>
 +
*<code>[[docker-compose version]]</code>
  
 
Operations:
 
Operations:
Line 74: Line 81:
 
=== Advanced ===
 
=== Advanced ===
 
# Read <code>docker-compose</code> source code: https://github.com/docker/compose
 
# Read <code>docker-compose</code> source code: https://github.com/docker/compose
# Read [[DevOps/Ansible/Modules|Ansible module]] documentation about <code>docker_compose</code>: https://docs.ansible.com/ansible/latest/modules/docker_compose_module.html
+
# Read [[Ansible module]] documentation about <code>docker_compose</code>: https://docs.ansible.com/ansible/latest/modules/docker_compose_module.html
 
# Learn to use extension-fields<ref>https://docs.docker.com/compose/compose-file/#extension-fields </ref> or templating added in 3.4 version. <ref>https://www.oreilly.com/ideas/3-docker-compose-features-for-improving-team-development-workflow</ref>
 
# Learn to use extension-fields<ref>https://docs.docker.com/compose/compose-file/#extension-fields </ref> or templating added in 3.4 version. <ref>https://www.oreilly.com/ideas/3-docker-compose-features-for-improving-team-development-workflow</ref>
 +
 +
 +
== Related terms ==
 +
* <code>[[--force-recreate]]</code>
 +
* <code>[[/etc/docker/daemon.json]]</code>
 +
* <code>[[volumes:]]</code>
 +
* <code>[[links:]]</code>
 +
* <code>[[environment:]]</code>
 +
* [[Nomad]]
  
 
== See also ==
 
== See also ==
* [[docker-compose release notes]]
 
 
* {{docker stack}}
 
* {{docker stack}}
 
* {{kubernetes}}
 
* {{kubernetes}}
 
* {{docker-compose}}
 
* {{docker-compose}}
 
* {{docker}}
 
* {{docker}}
 
+
* {{containers}}
  
 
{{CC license}}
 
{{CC license}}

Revision as of 12:32, 14 December 2021

Docker Compose[1] is a tool available since October 2014 for defining and running multi-container Docker applications.

Rules are defined in docker-compose.yml and executed by running docker-compose up command.

docker-compose allows to define start order dependencies between containers.

For reference of valid options for docker compose check: https://docs.docker.com/compose/compose-file/

Installation

Available for macOS, Linux and Windows

Basic commands

  • docker-compose --log-level
docker-compose up SERVICE_NAME
docker-compose up -d
-d daemon
docker-compose -f docker-compose_YOUR_NAME.yml up -d
  • Start your containers with a command line variable:
YOUR_VARIABLE=YOUR_VALUE docker-compose up[3]
  • docker-compose -p YOUR_PROJECT_NAME or [[docker-compose --project-name YOUR_PROJECT_NAME

Logs:

All commands

docker-compose[4]

docker-compose down --remove-orphans
docker-compose down --volumes

Operations:

Docker compose file: docker-compose.yml

Activities

Basic

  1. Read docker-compose StackOverflow questions: https://stackoverflow.com/questions/tagged/docker-compose?tab=Votes
  2. Read docker-compose changelog: https://github.com/docker/compose/blob/master/CHANGELOG.md
  3. Review docker compose file format evolution

Advanced

  1. Read docker-compose source code: https://github.com/docker/compose
  2. Read Ansible module documentation about docker_compose: https://docs.ansible.com/ansible/latest/modules/docker_compose_module.html
  3. Learn to use extension-fields[8] or templating added in 3.4 version. [9]


Related terms

See also

Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy.

Source: https://en.wikiversity.org/wiki/DevOps/Docker/docker_compose

Advertising: