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

Docker的容器管理操作

1、创建容器

容器创建:就是将镜像加载到容器的过程。

创建容器时如果没有指定容器名称,系统会自动创建一个名称。

新创建的容器默认处于停止状态,不运行任何程序,需要在其中发起一个进程来启动容器。

docker create创建的容器并未实际启动,还需要执行docker start命令或docker run命令以启动容器

格式:docker create [选项] 镜像
常用选项:
-i:让容器开启标准输入接受用户输入命令
-t:让 Docker 分配一个伪终端 tty
-it:合起来实现和容器交互的作用,运行一个交互式会话 shell docker create -it nginx:latest /bin/bash#更多的命令选项可以通过 man docker -run 命令来查看
选项含义
-i让容器的标准输入保持打开
-t让Docker 分配一个伪终端(如果想要导入一些命令,需要这个参数)
-it合起来实现和容器交互的作用,运行一个交互式会话shell
--name=容器名称指定容器名称,不指定会随机生成

2、查看容器的运行状态

docker ps -a			#-a 选项可以显示所有的容器
CONTAINER ID   IMAGE          COMMAND                  CREATED          STATUS    PORTS     NAMES
8b0a7be0ff58   nginx:latest   "/docker-entrypoint.…"   57 seconds ago   Created             inspiring_swanson容器的ID号	   加载的镜像     运行的程序               创建时间          当前的状态  端口映射  名称

docker  ps  [选项]

选项含义
-a显示所有的容器,包括未运行的
-f根据条件过滤显示的内容
–format指定返回值的模板文件
-l显示最近创建的容器
-n列出最近创建的n个容器
-no-trunc不间断输出
-q静默模式,只显示容器编号
-s显示总的文件大小

3、启动容器

#启动容器
格式:docker start 容器的ID/名称
docker start 8b0a7be0ff58
docker ps -a

4、创建并启动容器

可以直接执行docker run命令, 等同于先执行docker create 命令,再执行docker start 命令。

注意:容器是一个与其中运行的shell 命令共存亡的终端,命令运行容器运行,命令结束容器退出。

docker容器默认会把容器内部第一个进程,也就是pid=1的程序作为docker容器是否正在运行的依据,如果docker容器中pid=1的进程挂了,那么docker容器便会直接退出,也就是说Docker容器中必须有一个前台进程,否则认为容器已经挂掉。

当利用docker run来创建容器时,Docker在后台的标准运行过程是:

(1)检查本地是否存在指定的镜像。当镜像不存在时,会从公有仓库下载;

(2)利用镜像创建并启动一个容器;

(3)分配一个文件系统给容器,在只读的镜像层外面挂载一层可读写层;(镜像只读,不能删除。)

(4)从宿主主机配置的网桥接口中桥接一一个 虚拟机接口到容器中;

(5)分配一个地址池中的IP地址给容器;

(6)执行用户指定的应用程序,执行完毕后容器被终止运行。

docker run [选项] 镜像 [命令] [参数...]
选项说明
-a指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项
-d后台运行容器,并返回容器ID
-i以交互模式运行容器,通常与 -t 同时使用
-t为容器重新分配一个伪输入终端,通常与 -i 同时使用
-P(大写)随机端口映射,容器内部端口 随机 映射到主机的端口
-p指定端口映射,格式为:主机(宿主)端口:容器端口
--name=为容器指定一个名称
-dns 8.8.8.8指定容器使用的DNS服务器,默认和宿主一致
-dns-search example.com指定容器DNS搜索域名,默认和宿主一致
-h指定容器的hostname
-m设置容器使用内存最大值
-link=[ ]添加链接到另一个容器
--privileged=true授予此容器扩展特权,也就是开启特权模式; 这种模式下容器对docker宿主机拥有root访问权限。慎用!
--net/--network指定网络模式

例:docker run centos:7 /usr/bin/bash -c ls /
docker ps -a                    #会发现创建了一个新容器并启动执行一条 shell 命令,之后就停止了

5、 在后台持续运行 docker run 创建的容器

需要在 docker run 命令之后添加 -d 选项让 Docker 容器以守护形式在后台运行。并且容器所运行的程序不能结束(容器中的命令仍然在前台运行)。

使用 -itd 选项,可以创建并持续运行容器。即使进入容器后使用exit命令退出容器,也不会停止容器。

#-itd 后台运行容器.使用--name 指定名称docker run -itd --name test2 centos:7  /bin/bash​#查看容器状态,可以看出始终处于 UP,运行状态docker ps -aCONTAINER ID   IMAGE      COMMAND       CREATED          STATUS         PORTS     NAMESbaf5bdda3d28   centos:7   "/bin/bash"   10 seconds ago   Up 9 seconds             test2

6、停止容器

 格式:docker stop 容器的ID/名称      #正常停止,可以给容器一个等待时间,以防止数据的丢失。或 docker kill 容器的ID/名称   #强制停止,(相当于linux命令 kill -9),不会给容器反应时间,可能造成数据丢失​docker stop $(docker ps -aq)   #批量停止容器​docker ps -a |awk 'NR>=2 {print $1}' | xargs docker stop   #批量停止容器

7、 删除容器

 格式:docker rm <容器ID/名称> [-f]   #删除容器​docker rm $(docker ps -aq)         #批量删除所有容器​docker ps -a |awk 'NR>=2 {print $1}' | xargs docker rm   #批量删除所有容器

例:

 #无法删除运行中的容器,需要先停止容器或强制删除[root@zy2 ~]# docker rm 3a8ef7538a21Error response from daemon: You cannot remove a running container 3a8ef7538a21e917758bc700fa856af45de15a860fda4dc9b9a333b33ced568c. Stop the container before attempting removal or force remove​#已停止的容器,可以直接删除[root@zy2 ~]# docker rm baf5bdda3d28baf5bdda3d28​#批量删除所有容器[root@zy2 ~]# docker ps -aq                     #只显示所有容器的ID3a8ef7538a21a03185501236[root@zy2 ~]# docker rm $(docker ps -aq) -f     #强制删除所有容器3a8ef7538a21a03185501236

8、容器的进入

需要进入容器进行命令操作时,可以使用 docker exec 命令进入运行中的容器。进入容器前,确保容器正在运行。

  • 我们通常会使用 docker  exec -it bash 进入容器并开启一个bash环境的伪终端。也可以将bash 换成其他一条命令,让容器执行完后,将结果输出到屏幕
  • 后面可以跟上 -c 选项  “命令序列" ,命令序列可以是多个命令,使用分号隔开,可以一次性执行多条命令。

docker run -it 会创建前台进程,但是会在输入exit后终止进程。

docker attach 会通过连接stdin,连接到容器内输入输出流,会在输入exit后终止容器进程。

docker exec -it 会连接到容器,可以像SSH一样进入容器内部,进行操作,可以通过exit退出容器,不影响容器运行。

 格式:docker exec -it 容器ID/名称 /bin/bash​-i 选项表示让容器的输入保持打开。-t 选项表示让 Docker 分配一个伪终端。-it /bin/bash:进入容器时需要指定一个shell环境。

例1:前台运行容器时进入容器,使用exit退出容器后,容器就停止了

 #前台运行容器时,可以同时指定shell环境直接进行容器,但exit退出容器后,容器就停止了。[root@zy2 ~]# docker run -it --name yy1 centos:7 /bin/bash[root@c86f0e6b5433 /]# exit     #退出容器exit[root@zy2 ~]# docker ps -a     #CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                     PORTS     NAMESc86f0e6b5433   centos:7   "/bin/bash"   16 seconds ago   Exited (0) 2 seconds ago

例2:后台运行容器,之后使用docker exec进入容器,exit退出容器,容器不会停止

 docker run -itd --name yy2 centos:7    #后台运行容器docker exec -it yy2 /bin/bash          #使用exec进行容器,之后exit退出容器,容器不会停止​[root@zy2 ~]# docker run -itd --name yy2 centos:7f16a29a2942434cc8dd2b7b29cf56d3e6a5fba32caad329c1b59c7f1fa295685[root@zy2 ~]# docker exec -it yy2 /bin/bash[root@f16a29a29424 /]# lsanaconda-post.log  bin  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var[root@f16a29a29424 /]# exitexit[root@zy2 ~]# docker ps -aCONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                     PORTS     NAMESf16a29a29424   centos:7   "/bin/bash"   23 seconds ago   Up 22 seconds                        yy2c86f0e6b5433   centos:7   "/bin/bash"   5 minutes ago    Exited (0) 5 minutes ago

9、查看容器的元数据——docker inspect

 格式:docker inspect 容器id/容器名称​docker ps -a                   #先查看运行时容器的id​docker inspect 51fd134c7cc3    #查看容器的元数据"Gateway": "172.17.0.1","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"IPAddress": "172.17.0.2",       #容器的IP"IPPrefixLen": 16,"IPv6Gateway": "","MacAddress": "02:42:ac:11:00:02","Networks": {"bridge": {                 #使用的是网桥模式

10、容器日志

 格式:docker logs 容器ID/容器名

11、宿主机和容器之间的文件复制

1)将宿主机中的文件复制到容器中

 #将宿主机中的文件复制到容器中echo 123 > /opt/f1.txtdocker cp /opt/f1.txt  容器ID:/tmp/​[root@zy2 ~]# echo 123 > /opt/f1.txt[root@zy2 ~]# docker cp /opt/f1.txt  93007aee7e8f:/tmp/    #将宿主机中的文件复制到容器中[root@zy2 ~]# docker exec -it 93007aee7e8f /bin/bash       #进入容器查看是否复制成功root@93007aee7e8f:/# cd /tmproot@93007aee7e8f:/tmp# lsf1.txt root@93007aee7e8f:/tmp# cat f1.txt      #复制成功123root@93007aee7e8f:/tmp#

2)将容器中的文件复制到宿主机中

docker cp 容器ID:/tmp/f1.txt  ~/abc.txt   #复制并重命名​#将容器中/tmp目录下的f1.txt文件,复制到宿主机的/root目录下,并重命名为abc.txt[root@zy2 ~]# docker cp 93007aee7e8f:/tmp/f1.txt  ~/abc.txt  [root@zy2 ~]# lsabc.txt  anaconda-ks.cfg  initial-setup-ks.cfg  mynginx.tar  公共  模板  视频  图片  文档  下载  音乐  桌面

12、容器的导出与导入(容器的迁移)

用户可以将任何一个 Docker 容器从一台机器迁移到另一台机器。在迁移过程中,可以使用docker export 命令将已经创建好的容器导出为文件,无论这个容器是处于运行状态还是停止状态均可导出。

可将导出文件传输到其他机器,通过相应的导入命令实现容器的迁移。(注意:导入文件后会生成镜像,但不会自动创建容器。)

#导出格式:docker export 容器ID/名称 > 文件名
docker export 2592d3fad0fb > centos7.tardocker export -o centos7.tar 2592d3fad0fb#导入格式:cat 文件名 | docker import – 镜像名称:标签
cat centos7.tar | docker import - centos7:test			#导入后会生成镜像,但不会创建容器docker import centos7.tar -- centos7:test

例:

 #主机A将容器导出为文件,并将导出的文件传给主机B[root@zy2 ~]# docker 2592d3fad0fb > centos7.tar [root@zy2 ~]# scp centos7.tar 192.168.126.23:/root/​#主机B将文件导入生成镜像,并使用导入的镜像创建容器[root@zy3 ~]# cat centos7.tar | docker import - centos7:test   #导入后会生成镜像,但不会创建容器[root@zy3 ~]# docker run -id centos7:test                     #使用导入的镜像创建容器

总结:

容器管理命令

命令作用
docker create -i [–name=容器名称] 镜像名创建容器
docker create -it [–name=容器名称] 镜像名 <命令>创建容器并导入命令
docker start <容器ID/名称>启动容器
docker stop <容器ID/名称>停止容器
docker kill <容器ID/名称>立即强制停止容器
docker ps查询运行状态的容器
docker ps -a查询所有容器
docker rm [-f] <容器ID/名称>删除容器 (-f 强制删除正在运行的容器)
docker rm $(docker ps -aq)删除所有容器
docker run [–name] -id启动容器(一次性执行)
docker exec -it 容器ID/名称 bash进入容器
docker run -it 容器ID/名称 bash启动时进入容器
docker cp 宿主机文件 容器ID:容器目录将宿主机的文件复制到容器中
docker cp 容器ID:容器目录/文件 宿主机目录将容器中的文件复制到宿主机中
docker logs容器pid=1的进程日志
docker export 容器ID/名称 > 文件名将容器导出为文件
cat 文件名 docker import - 镜像名称:标签将导出的容器文件,导入生成镜像
docker stats查看docker消耗的资源状态

看当下所有容器占用的I/O有多少,占用内存多少?

使用docker stats命令查看。

容器有哪些状态?

Docker容器可以有四种状态:

  • 运行
  • 已暂停
  • 重新启动
  • 已退出

overlay2由哪几部分组成 ?

  • LowerDir
  • MergedDir
  • UpperDir
  • WorkDir

相关文章:

Docker的容器管理操作

1、创建容器 容器创建&#xff1a;就是将镜像加载到容器的过程。 创建容器时如果没有指定容器名称&#xff0c;系统会自动创建一个名称。 新创建的容器默认处于停止状态&#xff0c;不运行任何程序&#xff0c;需要在其中发起一个进程来启动容器。 docker create创建的容器…...

计算机组成原理——中央处理器

文章目录 **一 CPU的功能和基本结构****1 CPU的功能****2 [基本结构](http://t.csdn.cn/bpCt3)****2.1 运算器****2.2 控制器** **二 指令执行过程****1 指令周期****2 指令周期的数据流****2.1 取指周期****2.2 间址周期****2.3 执行周期****2.4 中断周期** **3 指令的执行方案…...

tidb变更大小写敏感问题的总结

作者&#xff1a; sustyle 原文来源&#xff1a; https://tidb.net/blog/2a72bc13 1 背景 近期&#xff0c;我们线上的tidb集群就遇到一个变更忽略大小写的需求&#xff0c;本来以为一个改表工单就解决了&#xff0c;但是业务反馈工单完成后&#xff0c;大小写仍旧敏感&…...

法规标准-UN R158标准解读

UN R158是做什么的&#xff1f; UN R158全名为针对驾驶员识别车辆后方弱势道路使用者&#xff0c;联合国对倒车系统和机动车的统一规定&#xff0c;该法规涉及批准倒车和机动车辆的装置&#xff0c;主要为保证倒车时避免碰撞&#xff0c;方便驾驶员观察了解车辆后部人员和物体…...

160个CrackMe之002

这道题就很简单 有了第一道题目的支持 我们就能做 首先 我们先要下载Msvbvm50.dll Msvbvm50.dll下载_Msvbvm50.dll最新版下载[修复系统丢失文件]-下载之家 然后我们可以运行程序了 比之前那个还简单 就是输入 然后比对 报错或者成功 开始逆向分析 先去常量中进行查找 找…...

3. 响应状态码及Response对象的status_code属性

3. 响应状态码及Response对象的status_code属性 文章目录 3. 响应状态码及Response对象的status_code属性1. 响应状态码2. 响应状态码共分为5种类型2.1 1xx&#xff08;临时响应&#xff09;2.2 2xx &#xff08;成功&#xff09;2.3 3xx &#xff08;重定向&#xff09;2.4 4x…...

MIME 类型列表 03

看表~按照内容类型排列的 MIME 类型列表 类型/子类型扩展名application/envoyevyapplication/fractalsfifapplication/futuresplashsplapplication/htahtaapplication/internet-property-streamacxapplication/mac-binhex40hqxapplication/msworddocapplication/msworddotappl…...

SpringBoot项目登录并接入MFA二次认证

MFA多因素认证(Multi-Factor Authentication )&#xff1a; 一些需要身份认证的服务&#xff08;如网站&#xff09;&#xff0c;为了提升安全性&#xff0c;通常会在账号密码登录成功后&#xff0c;要求用户进行第二种身份认证&#xff0c;以确保是正确用户登录&#xff0c;避…...

算法与数据结构(三)

一、堆 1&#xff0c;堆结构就是用数组实现的完全二叉树结构 根节点的左孩子的下标为&#xff1a;2i1,右孩子为2i2。两个孩子的父节点为(i-1)/2向下取整 2&#xff0c;完全二叉树中如果每棵子树的最大值都在顶部就是大根堆 从下往上将孩子与父节点进行比较&#xff0c;如果子叶…...

亚马逊云科技出海日,让数字经济出海扩展到更多行业和领域

数字化浪潮之下&#xff0c;中国企业的全球化步伐明显提速。从“借帆出海”到“生而全球化”&#xff0c;中国企业实现了从传统制造业“中国产品”出口&#xff0c;向创新“中国技术”和先导“中国品牌”的逐步升级。 作为全球云计算的开创者与引领者&#xff0c;亚马逊云科技…...

Pb协议的接口测试

【摘要】 Protocol Buffers 是谷歌开源的序列化与反序列化框架。它与语言无关、平台无关、具有可扩展的机制。用于序列化结构化数据&#xff0c;此工具对标 XML &#xff0c;支持自动编码&#xff0c;解码。比 XML 性能好&#xff0c;且数据易于解析。更多有关工具的介绍可参考…...

2. 分布式文件系统 HDFS

2. 分布式文件系统 HDFS 1. 引入HDFS【面试点】 问题一&#xff1a;如果一个文件中有 10 个数值&#xff0c;一行一个&#xff0c;并且都可以用 int 来度量。现在求 10 个数值的和 思路&#xff1a; 逐行读取文件的内容把读取到的内容转换成 int 类型把转换后的数据进行相加…...

借助金融科技差异化发展,不一样的“破茧”手法

撰稿 | 多客 来源 | 贝多财经 民营银行的诞生顺应了普惠金融的要求&#xff0c;承担着支持民营经济、服务小微的历史使命。经过近年来的发展&#xff0c;19家民营银行形成了特色化、差异化的发展模式&#xff0c;并用各自本领实践普惠金融的初心。 本文从多家民营银行在核心技…...

typescript中type、interface的区别

一、概念定义 interface&#xff1a;接口 在TS 中主要用于定义【对象类型】&#xff0c;可以对【对象】的形状进行描述。type &#xff1a;类型别名 为类型创建一个新名称&#xff0c;它并不是一个类型&#xff0c;只是一个别名。 二&#xff0c;区别 interface&#xff1a; …...

Ingress详解

Ingress Service对集群外暴露端口两种方式&#xff0c;这两种方式都有一定的缺点&#xff1a; NodePort &#xff1a;会占用集群集群端口&#xff0c;当集群服务变多时&#xff0c;缺点明显LoadBalancer&#xff1a;每个Service都需要一个LB&#xff0c;并且需要k8s之外设备支…...

【递归算法的Java实现及其应用】

文章目录 递归算法概述递归算法的实现步骤递归算法的Java实现递归算法的底层工作原理递归算法的底层代码讲解&#xff08;优先级高&#xff09;递归算法的实际应用场景递归算法在场景中解决的问题递归算法的优点和缺点总结 递归算法概述 递归算法是一种通过调用自身来解决问题…...

2023年度第四届全国大学生算法设计与编程挑战赛(春季赛)

目录 2023年度第四届全国大学生算法设计与编程挑战赛&#xff08;春季赛&#xff09;1、A2、Bx3、Cut4、Diff5、EchoN6、Farmer7、GcdGame8、HouseSub9、IMissYou!10、Jargonless 2023年度第四届全国大学生算法设计与编程挑战赛&#xff08;春季赛&#xff09; 1、A 题目描述…...

如何用PHP获取各大电商平台的数据

PHP获取API数据是指使用PHP语言从web服务中提取数据。API是指应用程序接口&#xff0c;它允许应用程序之间进行交互和通信&#xff0c;并且允许一个应用程序从另一个应用程序获取数据。PHP是一种网站开发语言&#xff0c;它可以使用多种方式来获取API数据。 在PHP中&#xff0…...

一站式完成车牌识别任务:从模型优化到端侧部署

交通领域的应用智能化不断往纵深发展&#xff0c;其中最为成熟的车牌识别早已融入人们的日常生活之中&#xff0c;在高速公路电子收费系统、停车场等场景中随处可见。一些企业在具体业务中倾向采用开源方案降低研发成本&#xff0c;但现有公开的方案中少有完成端到端的车牌应用…...

Linux4.8Nginx Rewrite

文章目录 计算机系统5G云计算第六章 LINUX Nginx Rewrite一、Nginx Rewrite 概述1.常用的Nginx 正则表达式2.rewrite和location3.location4.实际网站使用中&#xff0c;至少有三个匹配规则定义5.rewrite6.rewrite 示例 计算机系统 5G云计算 第六章 LINUX Nginx Rewrite 一、…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…...

基于服务器使用 apt 安装、配置 Nginx

&#x1f9fe; 一、查看可安装的 Nginx 版本 首先&#xff0c;你可以运行以下命令查看可用版本&#xff1a; apt-cache madison nginx-core输出示例&#xff1a; nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结&#xff1a; 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析&#xff1a; 实际业务去理解体会统一注…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库&#xff0c;例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体&#xff0c;比如 SnowballFight、Huggy the Do…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)

上一章用到了V2 的概念&#xff0c;其实 Fiori当中还有 V4&#xff0c;咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务)&#xff0c;代理中间件&#xff08;ui5-middleware-simpleproxy&#xff09;-CSDN博客…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表

##鸿蒙核心技术##运动开发##Sensor Service Kit&#xff08;传感器服务&#xff09;# 前言 在运动类应用中&#xff0c;运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据&#xff0c;如配速、距离、卡路里消耗等&#xff0c;用户可以更清晰…...

算法岗面试经验分享-大模型篇

文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer &#xff08;1&#xff09;资源 论文&a…...

[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.

ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #&#xff1a…...

Git常用命令完全指南:从入门到精通

Git常用命令完全指南&#xff1a;从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...