DevOps/Docker/docker compose
< DevOps < Docker
Docker Compose[1] is a tool available since 2014 for defining and running multi-container Docker applications.
Rules are defined in docker-compose.yml and executed by running docker-compose up.
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
brew install docker-compose
Basic commands
docker-compose -h(for list of commands and options)docker-compose updocker-compose up -d
- -d daemon
- Start your containers with a command line variable:
YOUR_VARIABLE=YOUR_VALUE docker-compose up[2]
docker-compose -p NAME --project-name
Logs:
docker-compose logsView output from containersdocker-compose logs -fView output from containersdocker-compose pull SERVICE_NAMEordocker-compose pull
docker-compose[3]
docker-compose builddocker-compose bundledocker-compose configdocker-compose createdocker-compose down
docker-compose down --remove-orphans
docker-compose eventsdocker-compose execdocker-compose helpdocker-compose imagesdocker-compose killdocker-compose logs[4]:docker-compose logs SERVICE_NAME(You will find your SERVICE_NAME looking into your docker-compose.yml file)docker-compose pausedocker-compose portdocker-compose psdocker-compose pull[5].docker-compose pull SERVICE_NAME. Just pull container images but do not start them. To update your image and start your services:docker-compose pull && docker-compose up -ddocker-compose pushdocker-compose restartdocker-compose rmdocker-compose rundocker-compose scaledocker-compose startdocker-compose stopdocker-compose topdocker-compose unpausedocker-compose up
Activities
Basic
- Read
docker-composeStackOverflow questions: https://stackoverflow.com/questions/tagged/docker-compose?tab=Votes - Read
docker-composechangelog: https://github.com/docker/compose/blob/master/CHANGELOG.md - Review docker compose file format evolution
Advanced
- Read
docker-composesource code: https://github.com/docker/compose - Read Ansible module documentation about
docker_compose: https://docs.ansible.com/ansible/latest/modules/docker_compose_module.html - Learn to use extension-fields[6] or templating added in 3.4 version. [7]
See also
docker stackanddocker swarmcommandsdocker start- Kubernetes Pods
References
- ↑ https://docs.docker.com/compose/
- ↑ https://www.oreilly.com/ideas/3-docker-compose-features-for-improving-team-development-workflow
- ↑ https://docs.docker.com/compose/reference/
- ↑ https://docs.docker.com/compose/reference/logs/
- ↑ https://docs.docker.com/compose/reference/pull/
- ↑ https://docs.docker.com/compose/compose-file/#extension-fields
- ↑ https://www.oreilly.com/ideas/3-docker-compose-features-for-improving-team-development-workflow
← docker tag