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

Docker 笔记 -- 借助AI工具强势辅助

常用命令

镜像管理命令:

docker images(列出镜像)
docker pull(拉取镜像)
docker build(构建镜像)
docker save/load(保存/加载镜像)

容器操作命令

docker run(创建并启动容器)
docker start/stop/restart(启停容器)
docker exec(进入容器)
docker rm/rmi(删除容器/镜像

仓库交互命令

docker login/logout(登录/退出仓库)
docker push(推送镜像)
docker pull(拉取镜像)

状态查看命令

docker ps(查看运行中容器)
docker logs(查看容器日志)

docker-compose.yaml 文件

 ​Docker Compose​ 的核心配置文件,用于定义和管理多容器 Docker 应用程序。它通过声明式语法描述应用的各个服务、网络、卷等组件及其依赖关系,使得容器编排变得简单高效。以下是其核心作用详解:

定义多容器服务

  • 服务编排​:在一个文件中定义多个容器(服务),例如 Web 服务、数据库、缓存等。
services:web:image: nginx:latestports:- "80:80"db:image: postgres:13environment:POSTGRES_PASSWORD: example

配置容器参数

常用配置项​:

  • image:指定容器镜像(如 nginx:latest)。
  • ports:端口映射(主机端口:容器端口)。
  • environment:设置环境变量(如数据库密码)。
  • volumes:挂载主机目录或卷到容器。
  • networks:自定义容器网络。
  • depends_on:定义服务启动顺序(如 Web 服务依赖数据库启动)

一键启停与扩展

  • 启动所有服务​:docker-compose up -d(后台运行)。
  • 停止服务​:docker-compose down(清理容器、网络)。
  • 扩展实例​:docker-compose up -d --scale web=3 启动 3 个 Web 容器实例

环境隔离与复用

  • 多环境适配​:通过 -f 指定不同文件(如 docker-compose.prod.yaml)切换生产/测试环境。
  • 变量替换​:使用 ${VARIABLE} 结合 .env 文件动态配置参数

资源限制与健康检查

资源限制

services:web:deploy:resources:limits:cpus: "0.5"memory: 512M

健康检查​:

healthcheck:test: ["CMD", "curl", "-f", "http://localhost"]interval: 30stimeout: 10s

网络与存储管理

  • 自定义网络​:容器间通过服务名通信(如 db 主机名指向数据库容器)。
  • 持久化数据​:通过 volumes 声明卷,避免容器销毁时数据丢失。

与 Docker Swarm/Kubernetes 集成

  • 生产级部署​:通过 docker stack deploy 将 Compose 文件部署到 Swarm 集群。
  • 转换为 Kubernetes​:docker-compose convert 生成 K8s 资源文件(需工具支持)。

http://www.xdnf.cn/news/723799.html

相关文章:

  • 【Android】如何抓取 Android 设备的 UDP/TCP 数据包?
  • ass字幕嵌入mp4带偏移
  • ubuntu系统安装Pyside6报错解决
  • Flask与PostgreSQL交互教程
  • K8s工作流程与YAML实用指南
  • 企业信息化集成方案:聚水潭·奇门数据对接金蝶云星空
  • 历年中国科学技术大学计算机保研上机真题
  • 无人机桥梁3D建模、巡检、检测的航线规划
  • 解决访问网站提示“405 很抱歉,由于您访问的URL有可能对网站造成安全威胁,您的访问被阻断”问题
  • 最悉心的指导教程——阿里云创建ECS实例教程+Vue+Django前后端的服务器部署(通过宝塔面板)
  • 使用 Zabbix 监控 MySQL 存储空间和性能指标的完整实践指南
  • OramaCore 是您 AI 项目、答案引擎、副驾驶和搜索所需的 AI 运行时。它包括一个成熟的全文搜索引擎、矢量数据库、LLM界面和更多实用程序
  • 编译rustdesk,使用flutter、hwcodec硬件编解码
  • 深度学习笔记25-RNN心脏病预测(Pytorch)
  • docker-compose搭建prometheus以及grafana
  • 工厂方法模式(Factory Method)深度解析:从原理到实战优化
  • 车辆减振器焊口疲劳试验台
  • powershell 中 invoke-expression 报错解决
  • 华为欧拉系统中部署FTP服务与Filestash应用:实现高效文件管理和共享
  • AsyncIOScheduler与BackgroundScheduler的线程模型对比
  • iOS 集成网易云信的音视频呼叫组件
  • leetcode:479. 最大回文数乘积(python3解法,数学相关算法题)
  • [Javascript进阶]JSON.stringify与JSON.parse详解
  • 公网ip怎么申请和使用?本地只有内网IP如何提供外网访问?
  • 实验设计与分析(第6版,Montgomery)第5章析因设计引导5.7节思考题5.8 R语言解题
  • 【C++】STL详解(四)---Stack和Queue
  • Vue3中Element-Plus中el-input及el-select 边框样式
  • 【设计模式】观察者模式
  • Java 大数据处理:使用 Hadoop 和 Spark 进行大规模数据处理
  • Eureka实战:怎么配置优化以减少服务发现延迟