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

Docker核心笔记

一、概述

1、架构

Docker容器基于镜像运行,容器共享宿主机的内核,不会加载额外内核,通过Namespaces(环境隔离)和Cgroups(资源控制)实现隔离,Cgroups会限容器使用资源并控制优先级和统计数据。隔离后的容器仅包含应用所需的用户态依赖

2、安装

安装先卸载再安装,使用的yum remove ...yum install ...。可以去阿里云的容器镜像服务配置docker的加速器,修改/etc/docker/daemon.json文件。

二、命令

1、系统命令

  • systemctl start docker:启动docker
  • systemctl stop docker:停止docker
  • systemctl restart docker:重启docker
  • systemctl enable docker:设置开机自启
  • systemctl status docker:查看docker状态

2、docker常用命令

  • docker pull 镜像名:标签:拉取指定版本的镜像,不指定标签的话,一般为默认拉取的是latest标签即最新或被维护的镜像
  • docker images:查看所有镜像
  • docker rmi [-f] 镜像名:删除指定镜像。-f表示强制删除,有运行中的容器也可以删除
  • docker run ……:创建并启动一个容器
  • docker rm [-f] [-v] 容器名:删除掉一个容器,-v同时强制删除关联匿名卷
  • docker start 容器名:启动一个指定的容器
  • docker restart 容器名:重启一个指定的容器
  • docker stop 容器名:停止一个指定的容器
  • docker ps [-a] [--filter "status=exited"]:查看所有运行的容器,-a参数表示查看所有容器。–format可以指定输出的格式,–filter可以进行过滤
  • docker logs [-f] 容器名:查看容器的日志。-f表示动态的查看
  • docker exec -it 容器名 bash:进入到容器的内部。-it表示可交互的终端。bash表示命令行的模式。容器内exit命令退出。某些精简镜像可能只有sh
  • docker save -o 保存后的名字.tar 镜像名:标签:将镜像保存下来,可以实现镜像的传递
  • docker load -i 保存后的名字:将docker save的镜像加载到本机的docker images
  • docker -v:查看版本
  • docker inspect 容器名:查看容器的详细信息

3、创建并运行容器案例

Mysql

docker run -d \--name mysql \-p 3306:3306 \-e TZ=Asia/Shanghai \-e MYSQL_ROOT_PASSWORD=123 \--network mynetmysql
  • docker run -d:创建并运行一个容器,-d让容器在后台运行
  • --name mysql:给容器起一个名字,必须唯一
  • -p 3306:3306:端口映射,宿主机端口映射容器内的端口
  • -e TZ=Asia/Shanghai:环境变量,key=value,每个容器预设的键值对
  • --network mynet:使容器加入名字为mynet的这个网络中,指定后就不会加入默认的网络中
  • mysql:运行的镜像名字。完整写法:[repository]:[tag],如mysql:5.7。没写的话,默认latest,最新版本

Jenkins

docker run --name jenkins -u root -d \-p 8080:8080 -p 50000:50000 \-v /var/jenkins_home:/var/jenkins_home \-v /var/run/docker.sock:/var/run/docker.sock \

相关文章:

  • 05. C#入门系列【类、结构、枚举】:从青铜到王者的进阶之路
  • 博客摘录「 游戏开发笔记(九)——技能系统」2025年5月25日
  • HOT 100 | 189.轮转数组、238. 除自身以外数组的乘积、41. 缺失的第一个正数
  • TensorRT----RepVGG模型推理与部署
  • WebGL3(WebGL or WebGPU?)
  • 云手机是什么?哪个云手机便宜好用,掌派云手机流畅不卡顿
  • 如何解答一个C++编程题目
  • Docker 一键部署倒计时页面:Easy Countdown全设备通用
  • 西门子PLC S7-200接编码器开发
  • 数据库故障排查指南技术文章
  • Linux `date` 命令深度解析与高阶应用指南
  • numpy执行无缘无故崩溃 没有报错
  • 13软件测试用例设计方法-场景法
  • Baklib知识中台构建实战
  • Python 内存管理机制详解:从分配到回收的全流程剖析
  • Ansible常用Ad-Hoc 命令
  • 动态规划-53.最大子数组和-力扣(LeetCode)
  • CentOS 7.6 + Docker:搭建后端常用的开发环境
  • springboot3 configuration
  • 软件质量保证与测试实验
  • 广州建设网站是什么/厦门网站快速排名优化
  • 网站 not found/最新nba排名
  • 合肥网站建设哪家好/网站备案查询官网
  • 惠安网站建设/seo优化技术教程
  • 用dw做网站怎么添加音乐/网站按天扣费优化推广
  • 福田做网站价格/p2p万能搜索引擎