Docker Compose 安装与使用(常用指令)

简介: Docker Compose 安装与使用(常用指令)

一、简介

  • Docker Compose 是一个编排多容器分布式部署的工具,提供命令集管理容器化应用的完整开发周期,包括服务构建、启动和停止。使用步骤:
1. 利用 Dockerfile 定义运行环境镜像
2. 使用 docker-compose.yml 家义组成应用的各服务
3. 运行 docker-compose up 启动应用

二、安装与使用

  • 除了在 Linux 上安装 docker 时,不会自动安装 docker-compose,其他平台(windowmac)都会自动安装好 docker-compose
  • 安装好 docker 后,可以通过下面命令检查是否顺带安装好了 docker-compose,没有安装好,可以按 官网的方式进行安装,然后检查是否安装成功。
$ docker-compose -v
  • 创建一个工作目录
$ mkdir ~/docker-compose
$ cd ~/docker-compose
  • 编写 docker-compose.yml 文件,文件名固定写法。在 yml 语法中 - 表示数组写法,可以多个。
// 版本
version: '1'
// 服务
services:
    // 服务名称(也就是容器名称)
    nginx:
        // 镜像
        image: nginx:2.0
        ports:
            // 端口映射
            - 80:80
        // 关联的容器(也就是可以访问的容器)
        links:
            // 关联容器名称
            - app
        // 目录映射
        volumes:
            - ./nginx/conf.d:/etc/nginx/conf.d
            -  ....可以多个
    // 服务名称(也就是容器名称)
    app:
        image: app
        // 对外暴露的端口
        expose:
            - "8080"
  • 创建 ./nginx/conf.d 目录,然后建一个 nginx 配置文件
# 创建配置文件夹
$ mkdir -p ./nginx/conf.d
# 进入配置文件夹
$ cd ./nginx/conf.d
# 新建 nginx 配置文件,名字无所谓,主要是后缀
$ vim mynginx.conf
  • mynginx.conf 内容
server {
    listen: 80;
    access_log off;
    location / {
        # app 位置就是 links 里面存在容器名称加上容器暴露的端口
        proxy_pass http://app:8080
    }
}
  • 然后回到 ~/docker-compose 目录启动容器,启动后通过 http://IP地址 访问
$ cd ~/docker-compose
# 启动容器
$ docker-compose up

三、常用指令

  • 启动和停止服务
# 启动项目中的服务
$ docker-compose up
# 启动项目中的服务并设置组名称(默认使用当前文件夹名称,单个容器使用的是 --name 设置名称)
# 组名称也就是项目名称 -p;--project xxx
$ docker-compose -p myproject up
# 启动服务并在后台运行
$ docker-compose up -d
# 停止服务
$ docker-compose stop
  • 构建和重构服务
# 构建服务的镜像
$ docker-compose build
# 如果服务镜像不存在,则构建镜像并启动服务
$ docker-compose up –build
# 重构服务
$ docker-compose up –force-recreate
  • 查看服务信息
# 查看项目中所有服务的信息
$ docker-compose ps
# 查看容器的日志
$ docker-compose logs
# 在服务镜像的容器中执行命令
$ docker-compose exec service_name command
  • 删除服务
# 停止所有容器后,删除所有服务容器
$ docker-compose down
# 停止所有容器后,删除所有服务容器与对应的数据卷
$ docker-compose down -v 
# 删除所有停止后的服务容器
$ docker-compose rm --stop
相关文章
|
4月前
|
人工智能 前端开发 Docker
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
在 AI 智能体开发中,开发者常面临本地调试与云端部署的矛盾。本文介绍如何通过 Docker Compose 与 Docker Offload 解决这一难题,实现从本地快速迭代到云端高效扩容的全流程。内容涵盖多服务协同、容器化配置、GPU 支持及实战案例,助你构建高效、一致的 AI 智能体开发环境。
476 2
从本地到云端:用 Docker Compose 与 Offload 构建可扩展 AI 智能体
|
4月前
|
关系型数据库 数据库 PostgreSQL
docker 安装 Postgres 17.6
本文介绍如何通过Docker安装和配置PostgreSQL 17.6。内容包括拉取镜像、导出配置文件、运行容器并挂载数据与配置文件目录,以及进入容器使用psql操作数据库的完整步骤,便于持久化管理和自定义配置。
589 3
docker 安装 Postgres 17.6
|
3月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
581 5
|
3月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
413 2
|
4月前
|
运维 数据可视化 开发者
2025年 三个 Docker Compose 可视化管理器测评
本文对比了三款主流的 Docker Compose 可视化管理工具。随着 Docker 的普及,Compose 已成为多容器应用部署的标准,但 YAML 配置复杂、协作困难等问题也日益突出。三款工具各有侧重:Docker Desktop 适合个人本地开发,Portainer 适合小团队运维管理,而 Websoft9 则通过 GitOps 实现了强大的版本控制与团队协作能力。文章从可视化编辑、部署便捷性、版本管理等方面进行评测,为不同使用场景提供了推荐方案,展望了未来 Compose 管理向 GitOps 深度融合的发展趋势。
606 1
2025年 三个 Docker Compose 可视化管理器测评
|
数据可视化 开发工具 git
GitOps 驱动的 Docker Compose 可视工具化来了,图形化编辑器上玩转容器编排
Docker Compose 简化了多容器应用的部署,但随着应用复杂度上升,文本配置方式逐渐暴露出维护难、协作效率低等问题。基于 GitOps 的可视化 Docker Compose 工具应运而生,通过图形界面降低使用门槛,提升配置准确性和团队协作效率。结合 GitOps,实现配置变更的版本追踪、自动化部署与环境一致性,为多容器应用管理提供高效、安全的解决方案。

热门文章

最新文章