安装docker

鉴于同学们用的设备都不一样,不能让大家在第一步就被劝退,所以三个平台的安装方式都准备了,请自行选择。

不推荐在windows安装

mac

命令行安装

需要先安装homebrew

homebrew国内镜像

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

执行后选择中科大的镜像,即数字1

clone时间过长,约5-10分钟。

安装docker

brew install --cask --appdir=/Applications docker

Installing cask docker时请耐心等待,时间较长

dmg安装

点击链接下载安装即可,并带有可视化界面。但个人觉得并不好用。

download.docker.com/mac/edge/Do…

启动docker服务

点击图标或者

open /Applications/Docker.app

windows

不推荐在windows安装,如果实在没有也可以装。

教程参考:www.runoob.com/docker/wind…

Docker 并非是一个通用的容器工具,它依赖于已存在并运行的 Linux 内核环境。

Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境,因此它执行的效率几乎等同于所部署的 Linux 主机。

因此,Docker 必须部署在 Linux 内核的系统上。如果其他系统想部署 Docker 就必须安装一个虚拟 Linux 环境。

img

在 Windows 上部署 Docker 的方法都是先安装一个虚拟机,并在安装 Linux 系统的的虚拟机中运行 Docker。

Docker Desktop 是 Docker 在 Windows 10 和 macOS 操作系统上的官方安装方式,这个方法依然属于先在虚拟机中安装 Linux 然后再安装 Docker 的方法。

Docker Desktop 官方下载地址: hub.docker.com/editions/co…

**注意:**此方法仅适用于 Windows 10 操作系统专业版、企业版、教育版和部分家庭版!

安装 Hyper-V

Hyper-V 是微软开发的虚拟机,类似于 VMWare 或 VirtualBox,仅适用于 Windows 10。这是 Docker Desktop for Windows 所使用的虚拟机。

但是,这个虚拟机一旦启用,QEMU、VirtualBox 或 VMWare Workstation 15 及以下版本将无法使用!如果你必须在电脑上使用其他虚拟机(例如开发 Android 应用必须使用的模拟器),请不要使用 Hyper-V!

开启 Hyper-V

右键开始菜单并以管理员身份运行 PowerShell,执行以下命令:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
复制代码

安装 Docker Desktop for Windows

点击 Get started with Docker Desktop,并下载 Windows 的版本,如果你还没有登录,会要求注册登录:

img

运行安装文件

双击下载的 Docker for Windows Installer 安装文件,一路 Next,点击 Finish 完成安装。

img

安装完成后,Docker 会自动启动。通知栏上会出现个小鲸鱼的图标

img

,这表示 Docker 正在运行。

我们可以在命令行执行 docker version 来查看版本号。

阿里云(linux)

基于阿里云服务器的安装方式,推荐!

查看配置

# 内核版本查看
uname -r

系统版本:CentOS7

内核版本:3.10.0-514.26.2.el7.x86_64

安装

安装有两种方式:

1.官方脚本安装(本文讲解)

2.手动安装

安装:此为国内镜像。安装完提示如果想在非root用户使用,需将用命名加入组,并重启。

curl -fsSL https://get.docker.com/ | sh

⚠️如果报错缺少deltarpm,执行下面命令

yum provides '*/applydeltarpm'    #查看依赖包的位置
yum -y  install deltarpm             #安装命令

启动docker服务

service docker start

❤️本文以下全部讲解均基于Linux系统❤️

运行实例

本着一切语言都是从hello-world开始的原则,我们先运行官方的实例体验一下。

官方提供了hello-world实例。运行前需要在官网注册docker id并创建仓库。

官网地址:hub.docker.com

注册时注意id起的复杂一点,很容易重复。

启动docker服务

systemctl start docker

拉取镜像

docker pull hello-world

运行镜像

docker run hello-world

查看容器

# -a 查看所有
docker ps -a

镜像加速

如果刚才拉取镜像时感觉速度过慢可以配置加速,速度正常可跳过此步。

鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决。

网易的镜像地址:hub-mirror.c.163.com

在任务栏点击 Docker for mac 应用图标

Perferences... -> Daemon -> Registry mirrors

在列表中填写加速器地址即可。

修改完成之后,点击 Apply & Restart 按钮,Docker 就会重启并应用配置的镜像地址了。

通俗理解什么是docker?

Docker的思想来自于集装箱,集装箱解决了什么问题?

在一艘大船上,可以把货物规整的摆放起来。并且各种各样的货物被集装箱标准化了,集装箱和集装箱之间不会互相影响。那么我就不需要专门运送水果的船和专门运送化学品的船了。只要这些货物在集装箱里封装的好好的,那我就可以用一艘大船把他们都运走。

docker就是类似的理念。现在都流行云计算了,云计算就好比大货轮。docker就是集装箱。

  • 不同的应用程序可能会有不同的应用环境,比如.net开发的网站和php开发的网站依赖的软件就不一样,如果把他们依赖的软件都安装在一个服务器上就要调试很久,而且很麻烦,还会造成一些冲突。比如IIS和Apache访问端口冲突。这个时候你就要隔离.net开发的网站和php开发的网站。常规来讲,我们可以在服务器上创建不同的虚拟机在不同的虚拟机上放置不同的应用,但是虚拟机开销比较高。docker可以实现虚拟机隔离应用环境的功能,并且开销比虚拟机小,小就意味着省钱了。

  • 你开发软件的时候用的是Ubuntu,但是运维管理的都是centos,运维在把你的软件从开发环境转移到生产环境的时候就会遇到一些Ubuntu转centos的问题,比如:有个特殊版本的数据库,只有Ubuntu支持,centos不支持,在转移的过程当中运维就得想办法解决这样的问题。这时候要是有docker你就可以把开发环境直接封装转移给运维,运维直接部署你给他的docker就可以了。而且部署速度快。

  • 在服务器负载方面,如果你单独开一个虚拟机,那么虚拟机会占用空闲内存的,docker部署的话,这些内存就会利用起来。

总之docker就是集装箱原理。

docker与虚拟机的对比

物理机:别墅

虚拟机:楼房

docker:酒店式公寓

docker三大概念

库:一个总的仓库,包含所有的镜像,使用时可以从库拉取镜像到本地。

镜像:从库中拉取下来的应用,比如mysql。

容器:镜像运行之后就是容器,容器和镜像可以互相转换。

docker工作流程

docker命令

docker指令基本用法:

docker 命令关键字 -参数

基本操作

# 查看docker信息
docker info# docker版本
docker version# 查找镜像
docker search nginx#拉取镜像
docker pull nginx

入门案例

快速搭建wordpress博客

查找镜像

docker search name
## wordpress
## mariadb

拉取镜像

docker pull wordpress
# mariadb就是mysql
docker pull mariadb

运行镜像

docker run --name db -p 3306:3306 --env MYSQL_ROOT_PASSWORD=root -d mariadb
docker run --name mywordpress --link db:mysql -p 8080:80 -d wordpress

运行成功,访问wordpress

http://libiao:8080

根据提示配置数据库信息,一个个人博客网站就搭建好了

查看端口映射

docker psdocker port CONTAINER_ID

举例:xxjob的8080端口映射到宿主机的8089端口

linux设置docker开机自启

systemctl enable docker

查看镜像

docker images#因为docker是分层,所以显示的文件大小要大于实际占用磁盘的大小

运行镜像

docker run --name db -p 3306:3306 --env MYSQL_ROOT_PASSWORD=root -d mariadb# --name 别名# --env 环境变量#-d 后台执行docker run --name mywordpress --link db:mysql -p 8080:80 -d wordpress# --link ip映射# -p 端口映射docker logs -f 7a38a1ad55c6# 像tail -f一样查看容器内日志docker top name#查看容器内的进程

删除镜像

docker rmi hello-world:latestdocker rmi id# 4位即可

复合命令

docker rm -f $(docker ps -a -q)#删除全部容器

查看运行的容器

docker ps

docker compose

一个方便维护多个容器的yaml文件,docker认为一个容器对应一个进程,但一个应用会有多个进程,例如上面的mysql和wordpress。

个人觉得docker compose类似于shell脚本,但他实际都python实现,访问的是docker的一些api。

Docker compose一般随docker一起安装,所以要求版本对应

docker versiondocker-compose --version

在yaml文件制定镜像的名字,版本,端口映射后用 up -d 启动

docker-compose.yaml up -d

查看日志

docker-compose logs

容器管理

进入容器

docker exec -it name /bin/sh

查看容器详细信息

容器的详细信息会以json的形式返回。

# docker inspect name
[root@lib mysh]# docker inspect mywordpress[{"Id": "6253e66959047c6f8de891abe1c661f7766fdef7407f00e07d1788310e0ea6a9","Created": "2021-08-04T20:11:43.649001354Z","Path": "docker-entrypoint.sh","Args": ["apache2-foreground"],"State": {"Status": "running","Running": true,"Paused": false,"Restarting": false,"OOMKilled": false,"Dead": false,"Pid": 28041,"ExitCode": 0,"Error": "","StartedAt": "2021-08-04T20:11:43.947511209Z","FinishedAt": "0001-01-01T00:00:00Z"}"Name": "/mywordpress",......

容器启停

docker start namedocker stop namedocker restart name

删除容器

# 删除时容器需要处于停止状态docker rm name

查看日志

# docker ps -a
docker logs container_Id

占用资源

docker stats name

镜像特性

镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,他包含运行某个软件所需的所有内容,包括代码、运行时库、环境变量和配置文件。将所有的应用和环境直接打包为docker镜像,就可以直接运行。

镜像名和版本号共同组成唯一标识,默认是最新版——lastest

分层原理

Docker的镜像通过联合文件系统将将各层文件系统叠加在一起。

引导方式

  • bootfs:传统操作系统,用于系统引导的文件系统,包括BootLoader和kernel,容器启动完成后会被卸载以节省内存资源。

  • rootfs:位于bootfs之上,表现为docker容器的根文件系统
    • 传统模式中,系统启动时,内核首先挂载为”只读“模式,完成全部自检后挂载为”读写“模式。
    • docker中,rootfs由内核挂载为”只读“模式,而后通过UFS技术挂载一个”可写“层。

⚠️注意:已有的分层只能读不能写,上层镜像优先级大于底层镜像

当我们使用pull命令时,我们可以看到docker的镜像是一层一层的在下载。这样做最大的好处就是资源共享了。

比如多个镜像都从Base镜像构建而来,那么宿主机只需要在磁盘上保留一份base镜像,同时内存中也只需要加载一份base镜像,这样就可以为所有的容器服务了,而且镜像的每一层都可以被共享。查看镜像分层的方式可以通过docker image inspect命令。

所有的Docker镜像都起始于一个基础镜像,当进行修改或者增加新的内容时,就会在当前的镜像层之上,创建新的镜像层。在添加额外的镜像层的同时,镜像始终保持当前所有镜像的组合, Docker通过存储引擎的方式来实现镜像层堆栈,并保证多镜像层对外展示为统一的文件系统。

UFS(联合文件系统)

UFS时一种分层、轻量级并且高性能的文件系统。

它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下。

UnionFS是Docker镜像的基础。镜像可以通过分层来进行继承,基于基础镜像,可以制作各种具体的应用镜像。一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层文件,系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录。

加载原理

Linux刚启动时会加载bootfs文件系统,在Docker镜像的最底层时bootfs。

当boot加载完成后整个内核就在内存中了,此时内存的使用权已由bootfs转交给内核,此时系统也会卸载bootfs。rootfs在bootfs之上,rootfs包含的就是典型Linux系统中的/dev、/proc、/bin、/etc等目录和文件。rootfs就是各种不同的操作系统发行版。

Docker File

仓库没有的镜像怎么办?

可以自己创建镜像吗?

容器->镜像

docker commit CID -t xx.xx.xx

⚠️⚠️⚠️⚠️ 工作在前台的守护进程至少一个

网易蜂巢:开源镜像仓库

编写docker file

Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

指令讲解

FROM

指定基础镜像,必须为第一个命令,有且只有一个

# FROM <image>
# FROM <image>:<tag>
# FROM <image>@<digest>
FROM mysql:5.6

MAINTAINER

创建者信息

# MAINTAINER <name>
MAINTAINER yitiao

RUN

用于在镜像容器中执行命令,其有以下两种命令执行方式:

#shell执行
#    RUN <command>
#exec执行
#    RUN ["executable", "param1", "param2"]
RUN apk update
RUN ["/etc/execfile", "arg1", "arg1"]

ADD

将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget

# ADD <src>... <dest>
ADD hom?.txt /mydir/      # ? 替代一个单字符,例如:"home.txt"

COPY

功能类似ADD,但是是不会自动解压文件,也不能访问网络资源

CMD

构建容器后调用,也就是在容器启动时才进行调用。

# CMD command param1 param2 (执行shell内部命令)
CMD echo "This is a test." | wc -
#CMD不同于RUN,CMD用于指定在容器启动时所要执行的命令,而RUN用于指定镜像构建时所要执行的命令

ENTRYPOINT

配置容器,使其可执行化。配合CMD可省去"application",只使用参数。

# ENTRYPOINT ["executable", "param1", "param2"] (可执行文件, 优先)
# ENTRYPOINT command param1 param2 (shell内部命令)FROM ubuntu
ENTRYPOINT ["top", "-b"]
CMD ["-c"]

LABEL

用于为镜像添加元数据

# LABEL <key>=<value> <key>=<value> <key>=<value> ...
LABEL version="1.0" description="一条coding" by="一条"

ENV

设置环境变量

# ENV <key> <value>  
# <key>之后的所有内容均会被视为其<value>的组成部分,因此,一次只能设置一个变量
# ENV <key>=<value> ...  
# 可以设置多个变量,每个变量为一个"<key>=<value>"的键值对
ENV myName John Doe
ENV myDog Rex The Dog
ENV myCat=fluffy

EXPOSE

指定于外界交互的端口

格式:EXPOSE <port> [<port>...]
示例:EXPOSE 80 443EXPOSE 8080EXPOSE 11211/tcp 11211/udp
注:EXPOSE并不会让容器的端口访问到主机。要使其可访问,需要在docker run运行容器时通过-p来发布这些端口,或通过-P参数来发布EXPOSE导出的所有端口

VOLUME

用于指定持久化目录

格式:VOLUME ["/path/to/dir"]
示例:VOLUME ["/data"]VOLUME ["/var/www", "/var/log/apache2", "/etc/apache2"
注:一个卷可以存在于一个或多个容器的指定目录,该目录可以绕过联合文件系统,并具有以下功能:
1 卷可以容器间共享和重用
2 容器并不一定要和其它容器共享卷
3 修改卷后会立即生效
4 对卷的修改不会对镜像产生影响
5 卷会一直存在,直到没有任何容器在使用它

WORKDIR

工作目录,类似于cd命令

# WORKDIR /path/to/workdir
WORKDIR /a  #(这时工作目录为/a)
WORKDIR b  #(这时工作目录为/a/b)
WORKDIR c  #(这时工作目录为/a/b/c)
#通过WORKDIR设置工作目录后,Dockerfile中其后的命令RUN、CMD、ENTRYPOINT、ADD、COPY等命令都会在#该目录下执行。在使用docker run运行容器时,可以通过-w参数覆盖构建时所设置的工作目录。

USER

指定运行容器时的用户名或 UID,后续的 RUN 也会使用指定用户。使用USER指定用户时,可以使用用户名、UID或GID,或是两者的组合。当服务不需要管理员权限时,可以通过该命令指定运行用户。并且可以在之前创建所需要的用户。

使用USER指定用户后,Dockerfile中其后的命令RUN、CMD、ENTRYPOINT都将使用该用户。镜像构建完成后,通过docker run运行容器时,可以通过-u参数来覆盖所指定的用户。

# USER user
# USER user:group
# USER uid
# USER uid:gid
USER www

ARG

用于指定传递给构建运行时的变量

# ARG <name>[=<default value>]
ARG site
ARG build_user=www

ONBUILD器

用于设置镜像触发

# ONBUILD [INSTRUCTION]
ONBUILD ADD . /app/src
ONBUILD RUN /usr/local/bin/python-build --dir /app/src
#当所构建的镜像被用做其它镜像的基础镜像,该镜像中的触发器将会被钥触发

一图理解,yyds

图片源于网络

docker file demo

# 一条coding
# Version 1.0# Base images 基础镜像
FROM centos#MAINTAINER 维护者信息
MAINTAINER tianfeiyu #ENV 设置环境变量
ENV PATH /usr/local/nginx/sbin:$PATH#ADD  文件放在当前目录下,拷过去会自动解压
ADD nginx-1.8.0.tar.gz /usr/local/  
ADD epel-release-latest-7.noarch.rpm /usr/local/  #RUN 执行以下命令 
RUN rpm -ivh /usr/local/epel-release-latest-7.noarch.rpm
RUN yum install -y wget lftp gcc gcc-c++ make openssl-devel pcre-devel pcre && yum clean all
RUN useradd -s /sbin/nologin -M www#WORKDIR 相当于cd
WORKDIR /usr/local/nginx-1.8.0 RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-pcre && make && make installRUN echo "daemon off;" >> /etc/nginx.conf#EXPOSE 映射端口
EXPOSE 80#CMD 运行以下命令
CMD ["nginx"]

网络通信

docker是如何与内部和外部进行数据交换的?

  • 容器内部
  • 内部访问外部
  • 外部访问内部

网络知识补充

eth0

eth0 物理网卡是指服务器上实际的网络接口设备。设备用于接收以太网数据接口,数据包在各个节点中转发和路由。

veth

veth 顾名思义,veth-pair 是一对的虚拟设备接口,它都是成对出现的。

一端连着协议栈,一端彼此相连着。一个设备从协议栈读取数据后,会将数据发送到另一个设备上去。

正因为有这个特性,它常常充当着一个桥梁,连接着各种虚拟网络设备,典型的例子像“两个 namespace 之间的连接”,“Bridge、OVS 之间的连接”,“Docker 容器之间的连接” 等等,以此构建出非常复杂的虚拟网络结构,比如 OpenStack Neutron。

bridge Bridge 设备是一种纯软件实现的虚拟交换机,可以实现交换机的二层转发。与现实世界中的交换机功能相似。

与其他虚拟网络设备一样,可以配置 IP、MAC。Bridge 的主要功能是在多个接入 Bridge 的网络接口间转发数据包。

网络模型

我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式:

  • host模式,使用--net=host指定。

  • container模式,使用--net=container:NAME_or_ID指定。

  • none模式,使用--net=none指定。

  • bridge模式,使用--net=bridge指定,默认设置。

除这四种基本的之外,还支持各种自定义模型。

容器内部访问

通常情况下,docker使用网桥+NAT的方式进行通信。Bridge 模式会为容器创建独立的网络 namespace ,拥有独立的网卡等网格栈。

NAT:可以理解为网卡

Dcoker0:就是网桥,交换机,ifconfig可见

同一宿主机上,Bridge 模式创建的容器会通过 DHCP 链接到 docker0 上,通过 docker0 实现网络的互通。「容器之间都是连接掉docker0这个网桥上的,它作为虚拟交换机使容器可以相互通信」。

内外部通信

宿主机的 IP 地址与容器 veth pair 的 IP 地址不在同一个网段,宿主机外的网络无法主动发现容器的存在,不能直接进行容器通信。所以 Docker 提供了端口映射的方式,就是将宿主机上的端口流量映射转发到容器内的端口上。

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

相关文章

  1. ubuntu16.04 install Android Studio

    操作步骤&#xff1a; 将您下载的 .zip 文件解压缩到您应用的相应位置&#xff0c;例如 /usr/local/ 中&#xff08;用于用户个人资料&#xff09;或者 /opt/ 中&#xff08;用于共享用户&#xff09;。 如果您使用的是 64 位版本的 Linux&#xff0c;请确保首先安装 64 位计算…...

    2024/4/7 0:18:26
  2. Scanner类

    用户交互Scanner 基本语法中并没有实现程序和人的交互&#xff0c;但是Java提供了一个工具类&#xff0c;可以获取用户的输入。java.util.Scanner是Java5的新特征&#xff0c;可以通过Scanner类来获取用户的输入。 通过Scanner类的next()与nextLine()方法获取输入的字符串&…...

    2024/4/15 6:38:37
  3. 可用版本 10分钟不断电,抖动也较小

    //包含C++常用头文件 #include <iostream> #include <sstream>//-->std::stringstream ss; #include <fstream>//保存数据到txt #include <cstdio>...

    2024/4/17 22:08:42
  4. vue+element 表格 删除 批量删除

    效果图 以作物表为例 这里有【批量删除】和【删除】 是 啊...

    2024/4/19 16:41:16
  5. 一个简单的指示灯控件开发过程

    指示灯控件是上位机开发中常用的一个控件&#xff0c;下面针对这个控件的开发给大家做下具体介绍&#xff1a; 控件的开发都是由简单到复杂的&#xff0c;所以整个开发过程是这样的&#xff1a; 首先是最原始的一个指示灯&#xff0c;其实就是一个填充了颜色的圆形&#xff0c;…...

    2024/4/20 0:20:55
  6. Stata安装外部命令报错stacktrace not available

    解决办法&#xff1a;Stata的安装文件夹都需要是英文的&#xff0c;不能有中文字符&#xff0c;换成英文路径就好了。参考文章Stata如何快速安装外部命令...

    2024/4/15 6:38:47
  7. linux安装包查找及安装

    包查找安装的命令形式&#xff0c;有两种为&#xff1a;apt 和 dpkg&#xff0c;&#xff0c;&#xff0c;一般常用的是apt命令&#xff1b; apt&#xff1a; 命令 作用 apt-cache search package 搜索包 apt-cache show package 获取包的相关信息&#xff0c;如说明、大小、…...

    2024/4/15 6:38:27
  8. Groovy 的多重赋值和方法的多返回值

    追溯到刚开始学习 Groovy 还是在 2008 年,距今 2018 年有九年半余,曾记下几篇 Groovy 的日志。那时学习 Groovy 并无明确的目的,只因它是脚本语言, 可用来快速验证 Java API。曾经 BeanShell 芸花一现,JRuby 和 Jython 总是别人家的语言照搬而来的。而 Scala,Nashorn(jjs…...

    2024/4/15 6:38:22
  9. MySQL常见函数2——数学函数

    1、round&#xff08;&#xff09; 四舍五入 SELECT ROUND(4.50); select round(4.77531,2); #小数点后保留两位 2、 ceil&#xff08;&#xff09; 向上取整&#xff0c;返回大于等于该参数的最小整数 SELECT CEIL(1.56); 3、 floor&#xff08;&#xff09; 向下取整&…...

    2024/4/19 21:59:41
  10. 华为、苹果接踵而至,Mini LED会是视觉时代下的“最优解”?

    如果说用户对电子产品哪项硬件要求变高了&#xff0c;毫无疑问是屏幕。 就像苹果在2019年推出iPhone11上一般&#xff0c;随着OLED成为手机屏幕的标配&#xff0c;苹果采用LCD&#xff0c;遭到无数果粉跟网友的吐槽。 随着时代的不断更迭&#xff0c;电子产品的功能及硬件逐渐…...

    2024/4/17 7:27:17
  11. 不使用插件,实现vscode中python文件头部注释和函数注释

    vscode中python文件头部注释和函数注释 我使用过koroFileHeader插件和vscode-FileHeader插件&#xff0c;有时候快捷键并不会产生注释&#xff0c;且注释风格不甚理想。因此寻找不使用插件的方式来实现注释。 文件-首选项-用户片段-python.json 搜索python,选择python.json…...

    2024/4/15 6:38:22
  12. Mapper.xml配置文件问题(又是找BUG)

    今天又遇到了java.lang.ExceptionInInitializerError这个问题&#xff0c;因为以前遇到过&#xff0c;所以习惯性的找pom配置文件&#xff0c;然后发现没有错有&#xff0c;又看mybats.xml配置文件中写mapper文件的路径什么的&#xff0c;来来回回地该&#xff0c;文件来来回回…...

    2024/4/15 6:38:27
  13. 异步复位为什么要同步释放 ?

    异步复位有什么问题&#xff1f; 一般来说&#xff0c;复位信号有效后会保持比较长一段时间&#xff0c;确保 register 被复位完成。但是复位信号释放时&#xff0c;因为其和时钟是异步的关系&#xff0c;我们不知道它会在什么时刻被释放。 首先看图1&#xff0c;考虑复位信号…...

    2024/4/19 17:10:16
  14. java+web+超大文件上传

    总结一下大文件分片上传和断点续传的问题。因为文件过大&#xff08;比如1G以上&#xff09;&#xff0c;必须要考虑上传过程网络中断的情况。http的网络请求中本身就已经具备了分片上传功能&#xff0c;当传输的文件比较大时&#xff0c;http协议自动会将文件切片&#xff08;…...

    2024/4/7 0:18:17
  15. 0基础学数据分析 python实用模块

    ### 前言 python 众所周知python随着人工智能时代的带来渐渐走向神坛&#xff0c;但是我们要知道的是python作为一门编程语言本身并不是很牛&#xff0c;python之所以会如此火热主要就是由于其背后有一大堆功能十分强大的功能模块与包 """ 模块:可以粗略的理…...

    2024/4/15 6:39:22
  16. Winform控件开发(2)——Button控件的使用(史上最全)

    1、alowdrop 是否允许将数据拖动到控件上&#xff1b; 2、anchor 指定控件距离容器哪些边缘的距离保持不变&#xff0c;和Label一样 3、autoellipsis 文字超出控件大小&#xff0c;在文字末尾用三个点来表示省略号 4、autosize 是否根据text内容的多少自动调整控件的大小&#…...

    2024/4/15 6:39:27
  17. centos7 mysql数据库安装和配置

    Centos7安装Mysql数据库及配置...

    2024/4/20 17:10:39
  18. 生产消费线程使用单一资源

    package Thread3;import java.sql.PreparedStatement;/*** 资源*/ public class Resource {private volatile int times;private String name;private int age;private boolean flag false;//是否设置对象的值(重新赋值)private int setTimes;private int getTimes;public voi…...

    2024/4/15 6:39:27
  19. 一个Java初学者的感悟

    作为一个接触Java时间不是很长的人&#xff0c;我学习起来还是很费劲的&#xff0c;写这篇文章我想分享一下我的学习方法。 首先&#xff0c;要多查阅资料&#xff0c;了解理论知识&#xff0c;这对我们打代码有极大的帮助。还要用恰当的方法来总结知识&#xff0c;个人觉得xM…...

    2024/4/15 6:39:27
  20. 6 for循环

    七、for循环 7.1语法 for 临时变量 in 序列&#xff1a;重复执行的代码1重复执行的代码2...... 7.2快速体验 for 临时变量 in 序列&#xff1a;重复执行的代码......1.准备一个数据序列 2.forstr1 ilovepython for i in str1:print(i) 如上&#xff1a;自定义临时变量为&am…...

    2024/4/19 9:12:15

最新文章

  1. 【C++风云录】解密基因密码:使用C++工具与库揭示生物信息学与基因组学之谜

    高效处理生物学数据&#xff1a;探索生物信息学与基因组学领域的C工具与库 前言 在当今生物科学领域中&#xff0c;生物信息学和基因组学扮演着至关重要的角色。随着测序技术的飞速发展&#xff0c;大量的生物学数据被生成并涉及到序列分析、结构分析、比对、进化分析等诸多任…...

    2024/4/20 20:07:40
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 谷粒商城实战(008 缓存)

    Java项目《谷粒商城》架构师级Java项目实战&#xff0c;对标阿里P6-P7&#xff0c;全网最强 总时长 104:45:00 共408P 此文章包含第151p-第p157的内容 简介 数据库承担落盘&#xff08;持久化&#xff09;工作 拿map做缓存 这种是本地缓存&#xff0c;会有一些问题 分布…...

    2024/4/16 11:00:00
  4. 使用阿里云试用Elasticsearch学习:1.3 基础入门——搜索-最基本的工具

    现在&#xff0c;我们已经学会了如何使用 Elasticsearch 作为一个简单的 NoSQL 风格的分布式文档存储系统。我们可以将一个 JSON 文档扔到 Elasticsearch 里&#xff0c;然后根据 ID 检索。但 Elasticsearch 真正强大之处在于可以从无规律的数据中找出有意义的信息——从“大数…...

    2024/4/20 8:56:04
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/4/19 14:24:02
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/19 18:20:22
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/19 11:57:31
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/19 11:57:31
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/19 11:57:52
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/19 11:57:53
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/19 11:58:14
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/19 11:58:20
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/20 7:40:48
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/19 11:58:39
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/19 11:58:51
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/20 3:12:02
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/19 11:59:15
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/19 11:59:23
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/4/19 11:59:44
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/19 11:59:48
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/19 12:00:06
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/19 16:57:22
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/19 12:00:25
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/19 12:00:40
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57