Docker Docker Compose 完整入门与实用技巧 - 教程

news/2025/9/26 13:10:25/文章来源:https://www.cnblogs.com/tlnshuju/p/19113288

Docker & Docker Compose 完整入门与实用技巧 - 教程

2025-09-26 13:10  tlnshuju  阅读(0)  评论(0)    收藏  举报

1️⃣ Docker 常用命令

镜像操作

命令作用说明
docker images列出本地镜像包含镜像 ID、标签、大小
docker pull <镜像>拉取镜像从 Docker Hub 或自建仓库拉取
docker build -t <镜像名:tag> .构建镜像当前目录 Dockerfile 构建
docker rmi <镜像ID/镜像名>删除镜像必须先删除依赖该镜像的容器
docker tag <源镜像> <目标镜像>镜像打标签方便推送或管理
docker push <镜像>推送镜像推送到远程仓库

容器操作

命令作用说明
docker ps查看运行中容器只显示运行中
docker ps -a查看所有容器包括停止的
docker run -d --name <容器名> <镜像>运行容器-d 后台运行
docker stop <容器名>停止容器安全停止
docker start <容器名>启动已存在容器不删除容器
docker restart <容器名>重启容器停止 + 启动
docker rm <容器名>删除容器必须先 stop
docker exec -it <容器名> bash进入容器调试或管理容器

卷(Volume)管理

命令作用说明
docker volume ls列出卷查看本地数据卷
docker volume create <卷名>创建卷用于数据持久化
docker volume rm <卷名>删除卷删除前请确保卷不被容器使用
docker volume inspect <卷名>查看卷信息包括挂载路径

网络管理

命令作用说明
docker network ls列出网络包括 bridge、host、custom
docker network create <网络名>创建自定义网络容器可加入自定义网络通信
docker network inspect <网络名>查看网络显示容器连接信息
docker network rm <网络名>删除网络必须先断开容器连接

清理与监控

命令作用说明
docker logs -f <容器>查看日志-f 实时跟随
docker stats容器资源监控CPU、内存、网络
docker system prune -f清理未使用资源删除无用容器、镜像、网络
docker container prune删除停止的容器释放空间
docker volume prune删除无用卷注意数据丢失

使用小技巧

  1. 后台启动 + 日志跟随

    docker run -d --name myapp -p 8080:8080 myimage
    docker logs -f myapp
    docker exec -it myapp bash

  2. 升级部署

    docker pull myimage:latest
    docker stop myapp
    docker rm myapp
    docker run -d --name myapp -p 8080:8080 myimage:latest

  3. 容器与卷数据持久化

    docker system prune -f
    docker volume prune -f
    docker images

  4. 容器与卷数据持久化

  • 使用 -v <本地路径>:<容器路径>-v <卷名>:<容器路径>

  • 容器删除不影响卷数据

2️⃣ Docker Compose 常用命令

Docker Compose 用于定义和管理多容器应用,通过 docker-compose.yml 配置文件实现服务编排。

基本命令

命令作用常用选项
docker-compose up启动服务-d:后台运行,--build:启动前 build 镜像
docker-compose down停止并删除容器--volumes:删除卷,--rmi all:删除镜像
docker-compose restart重启服务指定服务名可重启部分服务
docker-compose stop停止服务不删除容器
docker-compose start启动已存在容器不重新创建
docker-compose logs查看日志-f 实时跟随
docker-compose ps查看容器状态列出当前项目下的容器
docker-compose exec进入容器执行命令服务名 bash
docker-compose run临时执行任务--rm 执行完删除容器
docker-compose build构建镜像--no-cache 不使用缓存

启动流程(文字版)

假设 docker-compose.yml 定义了三个服务:dbbackendfrontend

  1. docker-compose down

  2. docker-compose up -d

使用小技巧

  1. 后台启动 + 日志

    docker-compose up -d
    docker-compose logs -f

  2. 只重启某个服务

    docker-compose restart backend

  3. 彻底清理并重启

    docker-compose down --volumes
    docker-compose up -d --build

  4. 进入容器调试

    docker-compose exec backend bash

  5. 临时执行任务

    docker-compose run --rm backend python manage.py migrate

总结思路

比喻理解:

  • Docker = 工厂管理员

  • 镜像 = 模板

  • 容器 = 工厂实例

  • 卷 = 数据仓库

  • 网络 = 工厂间通道

  • Compose = 调度员,按依赖顺序管理工厂启动

  1. 开发调试up -d + logs -f + exec

  2. 升级部署down --volumes + up -d --build

  3. 临时任务run --rm

  4. 快速重启restart

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/918301.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

建网站过程网站制作报价优惠

[html] 说说你对属性data-的理解 data- 属性是H5新增的自定义属性&#xff0c;也可以用来存储值。我个人用的不多&#xff0c;这个data- 属性倒是和vue中的v-bind 功能相似&#xff0c; 自定义属性&#xff0c;绑定数据。也和上面说的一样可以通过js进行获取使用个人简介 我是…

营销型网站建设合同戚墅堰做网站

云原生之使用Docker部署RSS阅读器Huntly 一、Huntly介绍1.1 Huntly简介1.2 Huntly功能2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载Huntly镜像五、部署Huntly5.1 创建挂载目录5.2 创建Hun…

达州网站建设的公司怎么自己搭建梯子

最近在练习搭建网站&#xff0c;遇到游览器找不到服务器上的php文件的问题。后来查找发现&#xff0c;apache文档根目录跟apache虚拟主机文档根目录不同&#xff0c;服务器开启了虚拟主机功能。这导致游览器找不到php文件。 使用的环境是LAMP&#xff0c;它 的操作系统和软件版…

西安网站建设公司电话wordpress 删除 评论

事件以及事件相关的兼容性问题 事件最早是在 IE3 和 Navigator2 中出现的&#xff0c;当时是作为分担服务器运算负担的一种手段。要实现和网页的交互&#xff0c;就需要通过 JavaScript 里面的事件来实现。 每次用户与一个网页进行交互&#xff0c;例如点击链接&#xff0c;按下…

网站模板兼容手机端灰色推广引流联系方式

文章目录 &#x1f4c4;前言一. Mybatis简介✈️1. 什么是Mybatis&#x1f680;2. 为什么使用Mybatis 二. Mybatis快速入门&#x1f346;1. mybatis使用前准备1.1 创建springboot项目并引入相关依赖1.2 在 application.ym中进行数据源的配置1.3 创建数据表&#xff0c;准备表数…

杭州网站建设哪个好想创建一个网站

&#x1f33c;未封装 在项目中往往一个页面存在着要联调好几个接口&#xff0c;此时用下面的写法就会显得代码很冗余 // 向给定ID的用户发起请求 axios.get(/user?ID123456,{ params: { //发送请求的数据ID: 123456 } }) .then(function (response) { // 处理成功情…

网站详情页用什么软件做如何制作自己的网站模版

理解依赖属性 依赖属性支持的特征包括&#xff1a;动画、数据绑定、样式。由WPF元素暴露的属性大部分都是依赖属性。依赖属性和常规属性的使用方法相同。 WPF设计了依赖属性支持其特有的动态特性&#xff0c;并且不干扰其他系统的.net代码。 定义依赖属性 创造一个依赖属性的语…

PySide6 之鼠标事件写字板

一、效果图二、示例代码from PySide6.QtWidgets import * from PySide6.QtCore import * from PySide6.QtGui import * import sysclass ImageWidget(QWidget):pass鼠标控制图片缩放、拖动,鼠标滚动放大、缩小 class …

深入解析:golang基础语法(三)常量、指针、别名、关键字、运算符、字符串类型转换

深入解析:golang基础语法(三)常量、指针、别名、关键字、运算符、字符串类型转换pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; fo…

烟台网站建设方案成都市建设局官方网站

目录 一. 空属性null 二. 默认值default 三. 列描述comment 四. 填充零zerofill 五. 主键primary key 六. 自增长auto_increment 七. 唯一键unique 八. 外键foreign key 一. 空属性null 对于表中的数据&#xff0c;如果在进行插入的时候不显示地给定值&#xff0c;那么…

单B细胞技术如何实现兔单抗高通量高特异制备

单B细胞技术如何实现兔单抗高通量高特异制备 在单克隆抗体(mAb)研发领域,兔源单抗以其高亲和力和高特异性备受关注。传统的杂交瘤技术虽然成熟,但周期长、效率低,而且抗体多样性有限。近年来,单B细胞技术的出现,…

HP激光墨盒换墨粉

墨盒分区加墨是先清理使用过的墨粉,在加入要使用的墨粉。 清理使用过的墨粉 可拆开使用过的墨粉的墨盒去清理,也可用不拆下清理。打开红色框的盖子,到出里面的墨粉,最好用袋子装好清理,防止粉尘到处飞。 拆下来清…

实用指南:Golang学习笔记: 常用标准库

实用指南:Golang学习笔记: 常用标准库pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Mo…

AI论文速读 | 当大语言模型遇上时间序列:大语言模型能否执行多步时间序列推理与推断 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

unordered_map性能被吊打!我用基数树让内存池性能暴涨几十倍的秘密

哈喽,大家好,我是小康! 今天要和大家聊一个特别有意思的话题——基数树。 说实话,我第一次听到这个名词的时候,内心是懵逼的。基数?树?这玩意儿到底是啥? 直到有一天,我在研究TCMalloc内存池源码的时候,发现…

网站备案后可以更换域名吗网红营销优势

Title 题目 Automated anomaly-aware 3D segmentation of bones and cartilages in kneeMR images from the Osteoarthritis Initiative 来自骨关节炎计划的膝关节MR图像的自动异常感知3D骨骼和软骨分割 Background 背景 近年来&#xff0c;多个机器学习算法被提出用于图像…

asp网站配置伪静态重庆注册公司核名在哪个网站

上次提到的开机自启动的配置&#xff0c;获得了LD的称赞&#xff0c;然而LD的要求&#xff0c;都是“既得陇复望蜀”的&#xff0c;他又期望我们能实现openGauss安装的“自动化”&#xff0c;于是尝试了下用shell脚本部署&#xff0c;附件中的脚本实测有效&#xff0c;openEule…

详细介绍:《 Linux 点滴漫谈: 一 》开源之路:Linux 的历史、演进与未来趋势

详细介绍:《 Linux 点滴漫谈: 一 》开源之路:Linux 的历史、演进与未来趋势pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-fa…

深入解析:TENGJUN“二合一(2.5MM+3.5MM)”耳机插座:JA10-BPD051-A;参数与材质说明

深入解析:TENGJUN“二合一(2.5MM+3.5MM)”耳机插座:JA10-BPD051-A;参数与材质说明pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important…

龙凤网站建设云聚达长春网站建设哪里好

基于飞桨paddle波士顿房价预测练习模型测试代码 导入基础库 #paddle&#xff1a;飞桨的主库&#xff0c;paddle 根目录下保留了常用API的别名&#xff0c;当前包括&#xff1a;paddle.tensor、paddle.framework、paddle.device目录下的所有API&#xff1b; import paddle #Lin…