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

扩展名网站兰州做网站一咨询兰州做网站公司

扩展名网站,兰州做网站一咨询兰州做网站公司,色盲和色弱的区别,wordpress增加访问量Docker是啥Docker是一个开源的容器化平台,可以帮助开发者将应用程序和其依赖的环境打包成一个可移植、可部署的容器。Docker的主要目标是通过容器化技术,实现应用程序的快速部署、可移植性和可扩展性,从而简化应用程序的开发、测试和部署过程…

Docker是啥

        Docker是一个开源的容器化平台,可以帮助开发者将应用程序其依赖的环境打包成一个可移植、可部署的容器。

        Docker的主要目标是通过容器化技术,实现应用程序的快速部署、可移植性和可扩展性,从而简化应用程序的开发、测试和部署过程。

Docker与传统虚拟机的区别

        虚拟机是一个主机模拟出多个主机(多个虚拟机),需要先拥有独立的系统。传统虚拟机,利用hypervisor,模拟出独立的硬件和系统,在此之上创建应用。(与主机而言,是同等地位)

        docker 是在主机系统中建立多个应用及配套环境,把应用及配套环境独立打包成一个单位,是进程级的隔离。(于主机而言是个运行的进程)

Docker相对虚拟机的优势:

  • 轻量级: 容器与宿主机共享操作系统内核,因此容器本身非常轻量级,启动和停止速度快,资源占用少。
  • 可移植性: 容器可以在任何支持相应容器运行时的系统上运行,无需关注底层操作系统的差异,提供了高度的可移植性。
  • 快速部署: 容器化应用程序可以通过简单的操作进行打包、分发和部署,减少了部署过程的复杂性和时间成本。
  • 弹性扩展: 可以根据应用程序的需求快速创建、启动和停止容器实例,实现应用程序的弹性扩展和负载均衡。
  • 环境隔离: 每个容器都具有独立的运行环境,容器之间相互隔离,不会相互干扰,提供了更好的安全性和稳定性。

Docker与Maven 类比

Docker Registry:可分为 公有Docker Registry 和 私有Docker Registry。 最常⽤的Docker Registry莫过于官方的 Docker Hub, 这也是默认的Docker Registry. 

Docker架构

Docker Registry:可分为 公有Docker Registry 和 私有Docker Registry。 最常⽤的Docker Registry莫过于官方的 Docker Hub, 这也是默认的Docker Registry. 

Images( Docker镜像):Docker镜像是一个只读模板,它包含创建 Docker容器的说明。

Container(容器):容器是镜像的可运行实例。镜像和容器的关系有点类似于面向对象中,类和对象的关系。

Client(客户端):Docker客户端是 Docker的用户界面,它可以接受用户命令和配置标识。

Docker命令

Docker安装

        Docker 是一个开源的商业产品,有两个版本:社区版(Community Edition,缩写为 CE)和企业版(Enterprise Edition,缩写为 EE)

  • 安装:

        yum install -y docker-ce-3:24.0.2-1.el7.x86_64 # 这是指定版本安装

  • 启动并加入开机启动:

        systemctl start docker && systemctl enable docker

  • 验证是否安装成功/docker版本查看

        docker version

镜像相关命令

  • 搜索镜像

        docker search java : 在Docker Hub中搜索含有 java这个关键词的镜像仓库

  • 下载镜像

        docker pull java:8 // 下载最新版本的 Java镜像,如果要下载指定版本则在java后面加冒号指定版本

  • 列出下载镜像

        docker images

  • 删除镜像

        docker rmi java   // 强制删除加 -f

容器相关命令

1、新建并启动容器

docker run -d -p 91:80 nginx

docker run命令即可新建并启动一个容器,该命令是最常用的命令,它有很多选项,下面将列举一些常用的选项。

docker run命令创建容器时,会先检查本地是否存在指定镜像。如果本地不存在该名称的镜像, Docker就会自动从 Docker Hub下载镜像并启动一个 Docker容器。

-d选项:表示后台运行

-P选项:随机端口映射

-p选项:指定端口映射,有以下四种格式。

-- ip:hostPort:containerPort

-- ip::containerPort

-- hostPort:containerPort

-- containerPort

--net选项:指定网络模式,该选项有以下可选参数:

--net=bridge:默认选项,表示连接到默认的网桥。

--net=host:容器使用宿主机的网络。--net=container:NAME-or-ID:告诉 Docker让新建的容器使用已有容器的网络配置。

--net=none:不配置该容器的网络,用户可自定义网络配置。

2、列出运行中的容器

docker ps

3、停止容器

docker stop f0b1c8ab3633 -- 容器id

4、强制停止容器

docker kill f0b1c8ab3633

5、启动已经停止的容器

docker start f0b1c8ab3633  

6、查看容器所有信息

docker inspect f0b1c8ab3633

7、查看容器日志

docker container logs f0b1c8ab3633

8、查看容器里的进程

docker top f0b1c8ab3633

9、容器与宿主机相互复制文件

docker cp 容器id:要拷贝的文件在容器里面的路径 宿主机的相应路径

如:docker cp 7aa5dc458f9d:/etc/nginx/nginx.conf /mydata/nginx

docker cp 要拷贝的宿主机文件路径 容器id:要拷贝到容器里面对应的路径

10、进入正在运行的容器

docker exec -it f0b1c8ab3633 /bin/bash (有的容器需要把 /bin/bash 换成 sh)

// 如果docker run命令运行容器的时候,没有使用-it参数,就要用这个命令进入容器。一旦进入了容器,就可以在容器的 Shell 执行命令了

11、删除容器

docker rm f0b1c8ab3633 // 该命令只能删除已停止的容器,如需删除正在运行的容器,可使用-f参数

Dockerfile构建Docker镜像

Dockerfile是一个文本文件,其中包含了若干条指令,指令描述了构建镜像的细节。

在Dockerfile所在路径执行以下命令构建镜像:docker build -t nginx:tuling .

其中,-t指定镜像名字,命令最后的点(.)表示Dockerfile文件所在路径

使用Dockerfile构建微服务镜像

以项目tulingmall-member为例,将该微服务的可运行jar包构建成docker镜像

1、将jar包上传linux服务器/root/tulingmall/tulingmall-member目录,在jar包所在目录创建名为Dockerfile的文件。

2、在Dockerfile中添加以下内容

# 基于哪个镜像

From java:8

# 复制文件到容器

ADD tulingmall-member-0.0.5.jar  /tulingmall-member-0.0.5.jar

# 声明需要暴露的端口

EXPOSE 8877

# 配置容器启动后执行的命令

ENTRYPOINT java ${JAVA_OPTS} -jar /tulingmall-member-0.0.5.jar

3、使用docker build命令构建镜像

docker build -t tulingmall-member:0.0.5 .

4、启动镜像,加-d可在后台启动

docker run -d -p 8877:8877 tulingmall-member:0.0.5

加上JVM参数启动:

# --cap-add=SYS_PTRACE  这个参数是让docker能支持在容器里能执行jdk自带类似jinfo,jmap这些命令,如果不需要在容器里执行这些命令可以不加

docker run -d -p 8877:8877 \

-e SPRING_CLOUD_NACOS_CONFIG_SERVER_ADDR=192.168.65.174:8848 \

-e JAVA_OPTS='-Xmx1g -Xms1g -XX:MaxMetaspaceSize=512m' \

--cap-add=SYS_PTRACE \

tulingmall-member:0.0.5

5、访问会员服务接口

服务部署完成,即可以访问了。

将微服务镜像发布到阿里云远程镜像仓库

将微服务镜像发布到私有镜像仓库

1. 搭建私有docker镜像仓库

2.上传镜像到私有仓库

http://www.dtcms.com/a/519434.html

相关文章:

  • 华为OD-Java面经-21届考研
  • Excel拆分和合并优化版本
  • 智能网联汽车:当汽车遇上“智慧网络”
  • 常规点光源在工业视觉检测上的应用
  • C++新特性——正则表达式
  • 基于卷积神经网络的汽车类型识别系统,resnet50,vgg16,resnet34【pytorch框架,python代码】
  • 设计 企业网站电脑系统网站建设
  • 做网站业务的怎么找资源网站推广名片
  • FPGA强化- HDMI显示器驱动设计与验证
  • 【PPT-ungroup PPT解组合,python无水印】
  • Java 17 环境下 EasyPoi 反射访问异常分析与解决方案(ExcelImportUtil.importExcelMore)
  • SpringBoot+alibaba的easyexcel实现前端使用excel表格批量插入
  • 重大更新,LVGL有UI编辑器用了
  • 多场景 VR 教学编辑器:重构教学流程的场景化实践
  • 公司做网站让我们销售单页面网站模板怎么做
  • 广州微网站建设价位广东网站建设公司
  • 基于 Spring AI Alibaba + Nacos 的分布式 Multi-Agent 构建指南
  • 《与幽灵作战:Python 棘手 Bug 的调试策略与实战技巧》
  • 使用Requests和lxml实现飞卢小说网小说爬取
  • bug 记录 - 路由守卫 beforeRouteLeave 与 confirm 结合,不生效问题
  • 数据库字段类型bit容易被忽视的bug
  • centos 配置网络
  • [人工智能-大模型-55]:模型层技术 - AI的算法、数据结构中算法、逻辑处理的算法异同
  • LeetCode 3461.判断操作后字符串中的数字是否相等 I:简单题简单做的时候到了
  • IPhone 17 Pro Max拍摄专业画质视频教程
  • MoE大模型分布式训练:Switch Transformer与专家并行策略
  • 网站设置评价青岛企业网站建设优化
  • MySQL 增删改查操作与 SQL 执行顺序
  • 静态Web应用与JavaScript:现代前端开发的新范式
  • 按键精灵安卓/iOS脚本辅助,OpenCV实现自动化高效率工具