


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

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)

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.

How to restart the Docker container: get the container ID (docker ps); stop the container (docker stop <container_id>); start the container (docker start <container_id>); verify that the restart is successful (docker ps). Other methods: Docker Compose (docker-compose restart) or Docker API (see Docker documentation).

The process of starting MySQL in Docker consists of the following steps: Pull the MySQL image to create and start the container, set the root user password, and map the port verification connection Create the database and the user grants all permissions to the database

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)

Docker container startup steps: Pull the container image: Run "docker pull [mirror name]". Create a container: Use "docker create [options] [mirror name] [commands and parameters]". Start the container: Execute "docker start [Container name or ID]". Check container status: Verify that the container is running with "docker ps".

Create a container in Docker: 1. Pull the image: docker pull [mirror name] 2. Create a container: docker run [Options] [mirror name] [Command] 3. Start the container: docker start [Container name]
