当前位置: 首页 > news >正文

Docker Compose: 集合管理Docker的工具安装

  • Docker Compose:集合管理多个Docker容器的工具,在安装docker时windows,macos默认安装Docker Compose,linux需要自己手动安装
  1. 去官网https://github.com/docker/compose/releases下载需要的版本
  2. $ sudo chmod +x ./docker-compose-linux-x86_64
  3. $ sudo cp ./docker-compose-linux-x86_64 /usr/bin/docker-compose
  4. $ docker-compose version

例子

        一个用于Docker Compose的配置文件的例子,用于定义和配置两个服务:triton和copilot_proxy。

# https://github.com/fauxpilot/fauxpilot/blob/main/docker-compose.yamlversion: '3.3' # Docker Compose文件的版本services:triton: # 第一个服务,名称为tritonbuild: # 构建容器的配置context: . # 构建上下文位置为当前目录dockerfile: triton.Dockerfile # 使用triton.Dockerfile来构建容器# 容器启动后运行的命令command: bash -c "CUDA_VISIBLE_DEVICES=${GPUS} mpirun -n 1 --allow-run-as-root /opt/tritonserver/bin/tritonserver --model-repository=/model" shm_size: '2gb' # 分配给容器的共享内存大小volumes: # 挂载点配置- ${MODEL_DIR}:/model # 将宿主机的MODEL_DIR目录挂载到容器的/model目录下- ${HF_CACHE_DIR}:/root/.cache/huggingface # 将宿主机的HF_CACHE_DIR目录挂载到容器的/root/.cache/huggingface目录下ports: # 端口映射配置- "8000:8000" # 将宿主机的8000端口映射到容器的8000端口- "${TRITON_PORT}:8001" # 将宿主机的TRITON_PORT端口映射到容器的8001端口- "8002:8002" # 将宿主机的8002端口映射到容器的8002端口deploy: # 部署配置resources: # 资源预留配置reservations: # 预留资源配置devices: # 设备配置- driver: nvidia # 使用NVIDIA GPU驱动程序count: all # 使用所有可用的GPU设备capabilities: [gpu] # 使用GPU功能copilot_proxy: # 第二个服务,名称为copilot_proxy# For dockerhub version# image: moyix/copilot_proxy:latest# For local buildbuild: # 构建容器的配置context: . # 构建上下文位置为当前目录dockerfile: proxy.Dockerfile # 使用proxy.Dockerfile来构建容器command: uvicorn app:app --host 0.0.0.0 --port 5000 # 容器启动后运行的命令env_file: # 环境变量配置# Automatically created via ./setup.sh- .env # 读取.env文件中的环境变量ports: # 端口映射配置- "${API_EXTERNAL_PORT}:5000" # 将宿主机的API_EXTERNAL_PORT端口映射到容器的5000端口
http://www.lryc.cn/news/112942.html

相关文章:

  • Jmeter(三) - 从入门到精通 - 测试计划(Test Plan)的元件(详解教程)
  • 20天学会rust(一)和rust say hi
  • 嵌入式传感器将是未来智能交通发展的关键
  • Vue3 实现产品图片放大器
  • 机器学习笔记 - 使用 YOLOv5、O​​penCV、Python 和 C++ 检测物体
  • 使用手机相机检测电脑屏幕刷新率Hz
  • 修改k8s pod的挂载目录
  • Vue3+SpringBoot快速开发模板
  • CSDN竞赛68期
  • Redis入门
  • [CrackMe]BuLLeT.exe的逆向及注册机编写
  • C++ 中 int、short、long和long long 分别是几位?有符号无符号有什么区别?
  • Killing LeetCode [82] 删除排序链表中的重复元素 II
  • LeetCode 热题 100 JavaScript--283. 移动零
  • java读写ini文件
  • 【ARM Coresight 系列文章 2.3 - Coresight 寄存器】
  • kafka:java client使用总结塈seek() VS commitSync()的区别(三)
  • 如何用正确的姿势监听Android屏幕旋转
  • mysql高级三:sql性能优化+索引优化+慢查询日志
  • HCIP VLAN--Hybrid接口
  • 大数据开发面试必问:Hive调优技巧系列二
  • 【C++】STL——list的模拟实现、构造函数、迭代器类的实现、运算符重载、增删查改
  • vscode 插件::EIDE
  • Python 网络编程
  • SQL 数据科学:了解和利用联接
  • (统计学习方法|李航)第五章决策树——四五节:决策树的剪枝,CART算法
  • C语言--结构体定义
  • 解决Element Plus中Select在El Dialog里层级过低的问题(修改select选项框样式)
  • 【数据结构】二叉树 链式结构的相关问题
  • 【无标题】云原生在工业互联网的落地及好处!