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

相关推荐
秋邱3 小时前
高等教育 AI 智能体的 “导学诊践” 闭环
开发语言·网络·数据库·人工智能·python·docker
芥子沫3 小时前
日记应用推荐-Docker安装DailyNotes应用
docker·容器·日记
2501_9418814011 小时前
Kubernetes 容器集群资源调度与弹性扩容高可用架构在互联网业务实战经验总结
云原生·容器·kubernetes
究極の法則に通じた野犬11 小时前
k8s设计理念-k8s中哪些服务要部署成StatefulSet哪些部署成Deployment
云原生·容器·kubernetes
wuxingge11 小时前
k8s集群误删node节点,怎么添加回去
云原生·容器·kubernetes
贝锐12 小时前
Docker部署Teemii本地漫画库,并通过花生壳内网穿透实现远程访问
docker
观测云15 小时前
Kubernetes CRD 方式配置容器日志采集最佳实践
容器·kubernetes·日志分析
i***220715 小时前
springboot整合libreoffice(两种方式,使用本地和远程的libreoffice);docker中同时部署应用和libreoffice
spring boot·后端·docker
羑悻的小杀马特18 小时前
轻量跨云·掌控无界:Portainer CE + cpolar 让远程容器运维像点外卖一样简单——免复杂配置,安全直达对应集群
运维·网络·安全·docker·cpolar
EAIReport1 天前
企业级报表自动化:基于Docker的部署实践
运维·docker·自动化