DockerCompose常用命令

DockerCompose常用命令

在上一篇博客中,我们对DockerCompose有了一个初步的认识,以及介绍了多种安装方式,本文继续介绍DockerCompose的常用命令。

DockerCompose中常常用到两个术语,一个是服务,一个是项目。服务常常代表一个应用容器,项目常常由一系列应用容器组成,而 docker-compose就是面向项目进行管理的。对于Compose来说,大部分命令的对象既可以是项目本身,也可以指定为项目中的服务或者容器,一起来感受一下。

1、DockerCompose常用命令

在所有的命令中,compose 常常使用以下几个命令选项一起组合使用:

-f:使用指定的compose文件,默认为当前目录下的docker-compose.yaml文件

-p:项目的名称,默认将使用所在目录名称作为项目名

--verbose:输出更多调试信息

-v:打印版本信息并退出

查看安装版本:

root@zch01 \~\]# docker-compose --version 检查编写的yml文件: \[root@zch01 \~\]# docker-compose config #默认使用当前目录下的docker-compose.yml配置文件 注意:以下所有的命令都会使用当前目录下的docker-compose.yml配置文件,或者在命令后面指定配置文件: -f xxx.yaml 构建服务容器: 命令格式:docker-compose build \[options\] \[SERVICE...

命令选项:

--force-rm:删除构建过程中的临时容器

--no-cache:构建镜像过程中不使用cache

--pull:始终尝试通过pull来获取更新版本的镜像

创建并启动服务:

命令格式:docker-compose up [options] [SERVICE]

命令选项:

-d:在后台运行服务容器

-t:停止容器时候的超时(默认为 10 秒)

--no-color:不使用颜色来区分不同的服务的控制台输出

--no-deps:不启动服务所链接的容器

--force-recreate:强制重新创建容器,不能与 --no-recreate 同时使用

--no-recreate:如果容器已经存在了,则不重新创建,不能与 --force-recreate 同时使用

--no-build:不自动构建缺失的服务镜像

常用操作:

root@zch01 \~\]# docker-compose up # 默认使用当前目录下的docker-compose.yml配置文件 \[root@zch01 \~\]# docker-compose up -f xxx.yaml #指定配置文件 \[root@zch01 \~\]# docker-compose up -d #后台运行 \[root@zch01 \~\]# docker-compose up -d -f xxx.yaml 该命令它将尝试自动完成包括构建镜像、创建服务、启动服务,并关联服务相关容器的一系列操作 ,相关的服务都将会被自动启动,除非已经处于运行状态 ### 启动服务 \[root@zch01 \~\]# docker-compose start ### 停止服务 \[root@zch01 \~\]# docker-compose stop \[root@zch01 \~\]# docker-compose stop order ### 查看正在运行的服务 \[root@zch01 \~\]# ​ docker-compose ps ### 查看镜像 \[root@zch01 \~\]# ​ docker-compose images 可以查看到docker-compose.yml 相关的镜像 指定项目名,查看该项目名下的镜像: \[root@zch01 \~\]# docker-compose -p order images ### 进入服务 命令格式:docker-compose exec 容器名称 命令 \[root@zch01 \~\]# docker-compose exec order /bin/bash 查看日志: \[root@zch01 \~\]# docker-compose exec order tail -200f /opt/order/order.log ### 查看容器内运行的进程 \[root@zch01 \~\]# docker-compose top 查看指定服务中的进程 \[root@zch01 \~\]# docker-compose top order ### 查看日志 \[root@zch01 \~\]# docker-compose logs docker-compose logs命令会输出所有容器的日志,如果只想查看某个特定容器的日志,可以指定容器的名 命令格式: docker-compose logs 容器名称 \[root@zch01 \~\]# docker-compose logs order docker-compose logs命令支持使用--filter选项来过滤日志,可以根据日志的级别、容器名称、服务名称等进行过滤。 命令格式:docker-compose logs --filter 过滤条件 示例: 根据日志级别过滤:docker-compose logs --filter "level=" 根据容器名称过滤:docker-compose logs --filter "name=" 根据服务名称过滤: docker-compose logs --filter "service=" 实时查看日志: \[root@zch01 \~\]# docker-compose logs -f 使用-f选项后,命令会一直保持运行,实时输出容器的日志 ### scale扩容 设置指定服务运行的容器个数 命令格式:docker-compose scale \[options\] \[SERVICE=数量...

root@zch01 \~\]# docker-compose scale order=3 prod=3

相关推荐
功德+n2 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
小敬爱吃饭2 小时前
Ragflow Docker部署及问题解决方案(界面为Welcome to nginx,ragflow上传文件失败,Docker中的ragflow-cpu-1一直重启)
人工智能·python·nginx·docker·语言模型·容器·数据挖掘
木子欢儿3 小时前
Docker Hub 镜像发布指南
java·spring cloud·docker·容器·eureka
coppher4 小时前
Ubuntu 22.04 amd64 离线安装 Docker 完整教程
linux·docker
虚伪的空想家5 小时前
k8s集群configmap和secrets备份脚本
linux·容器·kubernetes
SXJR5 小时前
k8s中的Pod
云原生·容器·kubernetes
文静小土豆6 小时前
K8s 滚动更新在 Java 应用中的实践与优化
java·容器·kubernetes
w6100104666 小时前
CKA-2026-Ingress
云原生·容器·kubernetes·cka
bloglin999996 小时前
docker logs 如何一直监听日志输出
运维·docker·容器
说实话起个名字真难啊7 小时前
Docker 入门之网络基础
网络·docker·php