docker

  1. 概念介绍
    虚拟化:
    沙箱

  2. docker简介
    docker 使用了集装箱思想,由于开发人员的习惯不同,代码的风格不同,有些人喜欢使用linux环境开发,有的人喜欢使用windows,在开发过程中不会出现问题,一旦项目上线时会出现各种兼容性问题,导致项目上线周期比较长,因此我们在开发之初就创建一个统一的开发标准(开发环境),每个人都在在这个环境下开发,项目部署时,直接将整个环境部署到服务器.

  3. docker和vm的区别
    在这里插入图片描述
    vm------------------------------------------------------------------docker
    server 服务器
    host os 主机操作系统
    Hypervisor 管理程序
    Docker engine docker 引擎
    Gutest os 虚拟机的系统
    BINS/LIBS 系统的组件
    APP 应用

vm 在创建虚拟机的时候会单独创建一个系统的内核
docker 和主机公用一个系统内核 将节省的资源给应用去使用

  1. docker的安装
    centos的yum源中提供了docker的安装程序
    yum install docker

安装完成启动服务:
systemctl start docker
5. docker的基本操作
查看版本 docker --version
6. docker的基本使用
镜像image:一般封装的是docker实例,是一些应用程序,里面是一些文件,这些文件是只读的
容器container: 是用来读取镜像和运行镜像文件, 在镜像的基础之上添加了一个可写层
仓库registry: 用来存储镜像的 公共仓库 私有仓库 光放提供了一个 docker hub
(一)镜像的操作:
查看本地所有的镜像
在这里插入图片描述
查找镜像
docker search 镜像名

在这里插入图片描述
配置源
docker配置源文件 :/etc/docker/daemon.json
代开配置文件添加
{“registry-mirrors”: [“https://3laho3y3.mirror.aliyuncs.com”]}
保存并推出
重启服务

拉取镜像
docker pull 镜像的名字

修改本地镜像的仓库名
docker tag 仓库名 新名字
docker tag 仓库名:tag 新名字:新标签

删除镜像
docker image rm 镜像id/镜像名/镜像名:tag
docker rmi 镜像id/镜像名/镜像名:tag

镜像操作:
docker images
docker search 名字
docker pull 镜像名
docker tag 镜像id/镜像名/镜像名:tag
docker image rm 镜像id/镜像名/镜像名:tag

(二)容器操作:
第一种:创建容器,不启动容器
docker create -it --name=名字 镜像id /bin/bash
-i 交互模式
-t 创建一个伪终端
–name 容器的名字
/bin/bash 绑定一个shell的环境
在这里插入图片描述
启动容器(启动未运行的容器,并进入容器,推出后容器停止运行)
docker start -ai 容器名 # 启动并进入容器
-a 绑定输入输出
退出容器
exit

第二种:创建容器,并启动容器
docker run -dit --name 容器名 镜像id /bin/bash
在这里插入图片描述
进入容器(只能进入正在运行的容器,退出容器不会停止容器)
docker exec -it 容器名 /bin/bash

退出容器
exit
查看容器正在运行的容器
docker ps
docker container ls
查看所有的容器
docker ps -a
docker container ls --all

关闭容器
docker container stop 容器id或者容器名字
启动容器
docker container start 容器id或者容器名字

删除容器
docker container rm 容器ID或者容器名字
注意: 只能删除停止状态的容器
杀死容器(类似于stop)
docker container kill 容器ID或者容器名字。

总结:
创建容器
docker create -it --name=’’ 镜像id /bin/bash
docker run -itd --name=’’ 镜像id /bin/bash

启动:
docker container start 容器id/容器名
启动并进入
docker strart -ai 容器id
进入容器:
docker exec -it 容器id/容器名 /bin/bash
停止容器:
docker container stop 容器id/容器名
docker container kill 容器id/容器名

删除:
docker container rm 容器id/容器名
查看:
docker container ls / docker ps
docker container ls --all / docker ps -a
使用mysql镜像
docker run -itd --name mysql01 -e MYSQL_ROOT_PASSWORD=密码 镜像id
-e 设置MySQL管理员密码
docker exec -it mysql01 /bin/bash

端口映射:
服务器 3307端口已经被django使用
docker run -itd --name=’mysql01’ -p 3307:3306 -e MYSQL_ROOT_PASSWORD=’123456’ 镜像id
在这里插入图片描述
制作镜像:
1.下载一个纯净版的centos镜像
docker search centos
docker pull name
2.创建容器并运行镜像
docker run -itd --name=’’ 镜像id /bin/bash
3.进入镜像并安装python3
docker exec -it 容器名 /bin/bash
yum install python3 -y
4.制作镜像
退出容器后
Docker commit -m ’描述’ -a ’作者’ 容器名 镜像名:标签名
在这里插入图片描述
5.打包镜像,打包成tar包
Docker save -o 压缩后的文件名.Tar 镜像名
6.使用镜像
Docker load < 压缩包路径/ 压缩后的文件名.Tar
在这里插入图片描述
仓库 registry
docker 官方提供了一个开源的库
https://hub.docker.com/ 可以注册自己的仓库

在终端输入
docker login
修改镜像名
docker tag 旧名字:tag 用户名/仓库名:tag

上传:
docker push 用户名/仓库名:tag

拓展:私有仓库的使用:
准备工作
两台电脑都要有docker

  1. 创建私有库,要使用registry镜像
    (1) registry 镜像是官方开源的一个 仓库服务镜像
    Docker pull registry

2.准备一台电脑作为仓库服务:
保证服务启动
关闭防火墙
安全模式0

创建虚拟仓库
服务端
1.使用registry镜像 创建一个容器
Docker run -d -p 5000:5000 -v /opt/registry:/var/lib/registry registry
-p 映射端口
-v 映射路径

客户端:
配置文件目录:/etc/sysconfig/docker
在options后添加 --insecure-registry 服务端ip地址:5000
重启docker

上传镜像
修改镜像名
Docker tag 旧名字 ip:5000/name
执行
Docker Push 镜像名

测试拉取
删除原镜像
Pull 10.10.107.84:5000/name

基于51单片机,实现对直流电机的调速、测速以及正反转控制。项目包含完整的仿真文件、源程序、原理图和PCB设计文件,适合学习和实践51单片机在电机控制方面的应用。 功能特点 调速控制:通过按键调整PWM占空比,实现电机的速度调节。 测速功能:采用霍尔传感器非接触式测速,实时显示电机转速。 正反转控制:通过按键切换电机的正转和反转状态。 LCD显示:使用LCD1602液晶显示屏,显示当前的转速和PWM占空比。 硬件组成 主控制器:STC89C51/52单片机(与AT89S51/52、AT89C51/52通用)。 测速传感器:霍尔传感器,用于非接触式测速。 显示模块:LCD1602液晶显示屏,显示转速和占空比。 电机驱动:采用双H桥电路,控制电机的正反转和调速。 软件设计 编程语言:C语言。 开发环境:Keil uVision。 仿真工具:Proteus。 使用说明 液晶屏显示: 第一行显示电机转速(单位:转/分)。 第二行显示PWM占空比(0~100%)。 按键功能: 1键:加速键,短按占空比加1,长按连续加。 2键:减速键,短按占空比减1,长按连续减。 3键:反转切换键,按下后电机反转。 4键:正转切换键,按下后电机正转。 5键:开始暂停键,按一下开始,再按一下暂停。 注意事项 磁铁和霍尔元件的距离应保持在2mm左右,过近可能会在电机转动时碰到霍尔元件,过远则可能导致霍尔元件无法检测到磁铁。 资源文件 仿真文件:Proteus仿真文件,用于模拟电机控制系统的运行。 源程序:Keil uVision项目文件,包含完整的C语言源代码。 原理图:电路设计原理图,详细展示了各模块的连接方式。 PCB设计:PCB布局文件,可用于实际电路板的制作。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值