


Docker basics compose file structure and installation tools (detailed examples)
This article brings you the knowledge about compose in docker, including the compose file structure and the knowledge about installing the docker compose tool. I hope it will be helpful to you.
What is docker compose?
Docker compose is a container orchestration function that orchestrates and unites different servers running in different containers.
can be used to uniformly manage most containers: including but not limited to: network, port, mount, etc. can be used to implement clustering of containers. Compose can also be used to implement a series of operations related to containers and images. Operation is a function to manage containers
1. compose file structure
1. yml file
The file structure in compose usually refers to the structure of the yml file. So what is a yml file?
yml file is a file in key-value pair format.
yml files are very sensitive to the format. You need to pay attention to the following matters:
- Only recognizes the indentation of spaces and does not recognize the indentation form of the tab key
- Usually indent two spaces at the beginning
- characters and then indent one space, including but not limited to: colon, comma, horizontal bar and other characters. The character must be indented by one space
- Supports the use of # for comments
- If special characters are included, they need to be quoted in single quotes
- Boolean values must be enclosed in quotes
For example:
house: family: name: Doe parents: - John - Jane children: - Paul - Mark - Simone address: number: 34 street: Main Street city: Nowheretown zipcode: 1234
yml file format For example, the above requires one-level correspondence, and there are two spaces between different levels.
Note: If a key has multiple values in one level, it can be used in the next level. It also has two empty spaces, starting with a short horizontal bar, and writing several end horizontal bars for several values.
2. Commonly used fields in Compose configuration
Field | Description |
---|---|
build dockerfile centext | Specify the Dockerfile file name to build the path of the image context |
images | Specify the image |
command | Execute the command, overwriting the default command |
container name | Specify the container name, because the container name is unique. If you specify a custom name, you cannot create scale |
deploy | Specify configurations related to deployment and running services, and can only be used in Swarm mode |
environment | Add environment variables |
networks | Join network |
ports | Expose the container port, the same as -p, but the port number must be greater than 60 |
volumts | Mount the host path or command volume |
restart | Restart strategy, default no, always, on-failure, unless-stoped |
hostname | Container host name |
build: A definition method when constructing a mirror
dockerfile: Method It is built using dockerfile
context: The path of the service docerfile file
images: You can specify the image name to be used, for example: images: Image name, note: there is a space after it
command: execute a statement
container name: used to specify the name of the container, because the container The name is unique. If you specify a custom name, you cannot scale (set a replica set)
#Replica set: Make an image into multiple containers. The running environment and other aspects of these multiple containers are exactly the same. When a container in the container architecture dies, an identical container can be started directly to maintain the number of replica sets. This is the concept of replica sets, and it is also the core of K8s. It can improve the speed of microservices, improve disaster recovery, and high concurrency performance
deploy: It is a controller, and in k8s it is a plug-in that controls and manages replica sets
restart: A restart strategy. The default is not to start after shutdown. If always, it will automatically start the closed container regardless of manual shutdown or non-manual shutdown. Unless-stopped only pulls the closed status. Containers, on-failure, will only start containers with non-zero return codes
3. Compose’s external common commands
Field | Description |
---|---|
Rebuild an image information | |
List the containers currently controlled by docker compose | |
Create and start the container | |
Execute the command in the container | |
Specify the number of startups for a server, which is equivalent to the number of replica sets | |
Display container processes, all containers started by processes controlled by docker compose | |
View the output information of the container | |
Delete containers, networks, data volumes and images | |
stop /Start/Restart container service |
The above is the detailed content of Docker basics compose file structure and installation tools (detailed examples). For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



The steps to update a Docker image are as follows: Pull the latest image tag New image Delete the old image for a specific tag (optional) Restart the container (if needed)

How to use Docker Desktop? Docker Desktop is a tool for running Docker containers on local machines. The steps to use include: 1. Install Docker Desktop; 2. Start Docker Desktop; 3. Create Docker image (using Dockerfile); 4. Build Docker image (using docker build); 5. Run Docker container (using docker run).

Steps to create a Docker image: Write a Dockerfile that contains the build instructions. Build the image in the terminal, using the docker build command. Tag the image and assign names and tags using the docker tag command.

Four ways to exit Docker container: Use Ctrl D in the container terminal Enter exit command in the container terminal Use docker stop <container_name> Command Use docker kill <container_name> command in the host terminal (force exit)

Troubleshooting steps for failed Docker image build: Check Dockerfile syntax and dependency version. Check if the build context contains the required source code and dependencies. View the build log for error details. Use the --target option to build a hierarchical phase to identify failure points. Make sure to use the latest version of Docker engine. Build the image with --t [image-name]:debug mode to debug the problem. Check disk space and make sure it is sufficient. Disable SELinux to prevent interference with the build process. Ask community platforms for help, provide Dockerfiles and build log descriptions for more specific suggestions.

To save the image in Docker, you can use the docker commit command to create a new image, containing the current state of the specified container, syntax: docker commit [Options] Container ID Image name. To save the image to the repository, you can use the docker push command, syntax: docker push image name [: tag]. To import saved images, you can use the docker pull command, syntax: docker pull image name [: tag].

You can query the Docker container name by following the steps: List all containers (docker ps). Filter the container list (using the grep command). Gets the container name (located in the "NAMES" column).

Methods for copying files to external hosts in Docker: Use the docker cp command: Execute docker cp [Options] <Container Path> <Host Path>. Using data volumes: Create a directory on the host, and use the -v parameter to mount the directory into the container when creating the container to achieve bidirectional file synchronization.
