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天前
|
NoSQL Java Linux
《docker高级篇(大厂进阶):2.DockerFile解析》包括:是什么、DockerFile构建过程解析、DockerFile常用保留字指令、案例、小总结
《docker高级篇(大厂进阶):2.DockerFile解析》包括:是什么、DockerFile构建过程解析、DockerFile常用保留字指令、案例、小总结
128 75
|
18天前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
161 77
|
7天前
|
NoSQL 关系型数据库 应用服务中间件
docker基础篇:安装tomcat
docker基础篇:安装tomcat
115 64
|
1天前
|
存储 Kubernetes Docker
Kubernetes(k8s)和Docker Compose本质区别
理解它们的区别和各自的优势,有助于选择合适的工具来满足特定的项目需求。
40 19
|
9天前
|
关系型数据库 MySQL 数据库
docker高级篇(大厂进阶):安装mysql主从复制
docker高级篇(大厂进阶):安装mysql主从复制
70 24
|
10天前
|
NoSQL 算法 Redis
docker高级篇(大厂进阶):安装redis集群
docker高级篇(大厂进阶):安装redis集群
62 24
|
15天前
|
关系型数据库 MySQL Docker
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
75 24
|
8天前
|
Ubuntu Linux Docker
Ubuntu22.04上Docker的安装
通过以上详细的安装步骤和命令,您可以在Ubuntu 22.04系统上顺利安装
112 11
|
17天前
|
关系型数据库 MySQL Docker
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
96 6
|
7月前
|
存储 机器学习/深度学习 中间件
快速上手 Elasticsearch:Docker Compose 部署详解
本文介绍了如何使用Docker Compose快速搭建Elasticsearch学习环境。Elasticsearch是一款用于实时搜索和分析的分布式中间件,适用于多种场景,如搜索、日志分析、机器学习等。首先,创建docker网络,拉取最新版8.12.2镜像。接着,编写docker-compose.yml文件,配置单节点集群,设置端口映射、内存限制及数据卷挂载。然后,创建并配置数据卷目录,允许远程访问和跨域。最后,启动服务并验证,通过浏览器访问确认服务运行正常。本文为初学者提供了一个简便的Elasticsearch部署方法。
902 4
快速上手 Elasticsearch:Docker Compose 部署详解

热门文章

最新文章