惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
小众软件
小众软件
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
Hugging Face - Blog
Hugging Face - Blog
美团技术团队
博客园 - 三生石上(FineUI控件)
Last Week in AI
Last Week in AI
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
Microsoft Security Blog
Microsoft Security Blog
Y
Y Combinator Blog
A
About on SuperTechFans
The GitHub Blog
The GitHub Blog
U
Unit 42
H
Hackread – Cybersecurity News, Data Breaches, AI and More
云风的 BLOG
云风的 BLOG
IT之家
IT之家
MyScale Blog
MyScale Blog
V
Visual Studio Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
I
InfoQ
博客园 - 司徒正美

卡卡罗特

eino实现Agent eino整合RAG eino整合Tools go整合向量数据库ChromaDB langchainjs langchain实现Agent ollama调用各大模型 spring-ai 自定义一个MCP openCV初体验 01-Bing每日一图接口 02-腾讯API高清QQ头像https调用接口 01-获取指定网站的所有的链接 context.Context是什么? RWMutex读写锁 SyncMap的使用 defer的使用 go字符串工具类 go生成UUID go正则表达式 最后代码 | 卡卡罗特 swagger文档 | 卡卡罗特 react脚手架开发 | 卡卡罗特 python的对象增强 | 卡卡罗特 langchain实现Agent | 卡卡罗特 03.python列表集合元组字典 | 卡卡罗特 python依赖打包 | 卡卡罗特 python的异步 | 卡卡罗特 python的生成器 | 卡卡罗特 eino整合Tools | 卡卡罗特
docker-compose | 卡卡罗特
2026-05-10 · via 卡卡罗特

docker-compose ​

docker-compose 就是用过yaml的方式来实现docker的编排

特别注意!!!你要使用docker-compose命令,必须当前目录下有docker-compose.yml文件!!!

安装docker-compose ​

centos的系统 ​

shell

# 1. 安装 epel-release 扩展源
sudo yum install -y epel-release

# 2. 使用 yum 安装 docker-compose
sudo yum install -y docker-compose

# 3. 验证安装
docker-compose --version


#如果报命令不存在 则应该是路径问题  用下面的测试
/usr/bin/docker-compose --version

# 为了让终端在任何地方都能识别 docker-compose 命令,你可以创建一个软链接
sudo ln -s /usr/bin/docker-compose /usr/local/bin/docker-compose

常用命令 ​

shell

# 启动所有服务(后台运行)
docker-compose up -d

# 查看运行状态
docker-compose ps

# 查看日志
docker-compose logs

# 启动容器
docker-compose start

# 停止但不删除容器
docker-compose stop

# 停止并删除容器、网络
docker-compose down

# 重新构建并启动(代码修改后)
docker-compose up -d --build

# 只启动某个服务
docker-compose up -d nginx-app

第一个简单的docker-compose.yml ​

text

你的项目目录/
├── docker-compose.yml    # 这个文件
├── Dockerfile            # nginx2 需要的 Dockerfile

docker-compose.yml

shell

version: "3.3"  # 使用更新的版本

services:
  # 反向代理/网关(使用最新版)
  nginx-proxy:
    image: nginx:alpine        # 使用 alpine 版本,体积更小
    container_name: nginx-proxy
    ports:
      - "8081:80"
    restart: unless-stopped    # 自动重启策略

  # 应用服务器(需要构建)
  nginx-app:
    image: my-custom-nginx:v1  # <--- 添加这一行,强制指定镜像名
    depends_on:
      - nginx-proxy            # 等待代理启动
    build:
      context: .
      dockerfile: Dockerfile   # 可指定 Dockerfile 名称
    container_name: nginx-app
    ports:
      - "8082:80"
    restart: unless-stopped
    # 添加健康检查
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost"]
      interval: 30s
      timeout: 3s
      retries: 3

Dockerfile

shell

FROM alpine:3.19

LABEL maintainer="liuzhw"

# 安装 nginx(Alpine 官方源)
RUN apk add --no-cache nginx wget

# 声明端口
EXPOSE 80

# 前台运行 nginx
ENTRYPOINT ["nginx", "-g", "daemon off;"]

需要注意的是,通过docker-compose.yml 编排的容器,他们网络都是互通的。你可以用下面的方法测试

shell

docker exec -it nginx-app curl http://nginx-proxy:80