Docker笔记-对docker-compose.yml基本认识

背景

周末2天开了,GitHub上的某个开源项目,更新很频繁,node.js项目。源码看起来很牛,本来想研究下的,时间问题放弃了,能用就好了。但发现部署比较麻烦,服务器上还得node 20版本以上,我的centos 7带不了。最终看到有个docker字样,但奇怪的是,不能pull啊,但有个docker-compose.yml,参考项目给出的提示,一步一步用docker部署起来了。感觉还是比较方便的,在此记录一下。

基本认识

Docker Compose:它是 Docker 官方提供的一个工具,解决了 "手动逐个启动多个关联容器" 的痛点(比如一个 Web 应用需要搭配数据库、缓存、Redis 等多个容器)。而 docker-compose.yml 就是告诉 Compose 工具 "要启动哪些容器、每个容器怎么配置" 的 "说明书"。

docker-compose.yml :这个文件采用 YAML 格式(语法简洁,靠缩进和键值对组织),核心结构包含 3 个关键层级:

  1. version:指定 Compose 文件的版本(需和 Docker Compose 版本兼容,常用 3.x);

  2. services:定义所有需要运行的容器(服务),是文件的核心;

  3. volumes/networks(可选):定义共享数据卷、自定义网络,用于容器间通信 / 数据持久化。

在参考的项目中:

bash 复制代码
services:
  xxxxxx_name:
    build:
      context: .
      dockerfile: core/Dockerfile
    container_name: xxxxxx_name
    restart: unless-stopped
    environment:
      ADMIN_PASSWORD: admin
      TZ: Asia/Shanghai
    ports:
      - "8080:8080"
    volumes:
      - ./data:/app/core/data

其中最关键是docker内部需要干嘛,对应的文件如下:

dockerfile: core/Dockerfile

这里面就是放了一些docker命令

在docker内部install啥的。

使用方法也比较简单:

bash 复制代码
# 构建并后台启动
docker compose up -d --build

# 查看日志
docker compose logs -f

# 停止并移除容器
docker compose down
相关推荐
一隅论数智5 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
虎头金猫5 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
分布式存储与RustFS5 天前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
深圳老胡5 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
Because_of_Her15 天前
并查集-听课笔记
笔记·算法·并查集
彧azz5 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
玉&心5 天前
通过Arthas在线诊断K8S中的内存及JVM等使用情况
docker·k8s·arthas
xing-xing5 天前
Docker容器中Nginx站点根目录网页配置访问
nginx·docker
赵文宇(温玉)5 天前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
陈卫军老师5 天前
陈卫军:把口味写在一张纸上,店才稳得住
经验分享·笔记·流量运营