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

Linux应用系统快速部署:docker快速部署linux应用程序

目录

一、背景

(一)引入docker的起因

(二)docker介绍

(三)Docker部署的优势

1、轻量级和可移植性

2、快速部署和扩展

3、一致性

4、版本控制

5、安全性

6、资源隔离

7、简化团队协作

8、多容器并行

9、易于管理和监控

二、部署过程

(一)安装docker并设置开机启动

(二)导入docker镜像

1、将平台的docker部署包放到环境中解压并导入镜像

2、导入完成后查看镜像

(三)启动镜像

1、使用命令启动镜像

2、检查容器是否正常启动

3、查看服务端口是否正常启动

三、部署验证


一、背景

(一)引入docker的起因

        在给客户部署视频监控接入平台的过程中,有时客户提供的环境中有其他服务正在运行,有时候linux的系统环境比较杂乱,这是就可以使用docker来部署平台,在部署的同时又不会影响到客户现有的环境。

(二)docker介绍

        Docker是一个开源的应用容器引擎,它允许开发者以统一的方式打包应用程序及其依赖包到一个可移植的容器中,然后发布到任何安装了Docker引擎的服务器上。

        Docker的核心思想是容器化,通过将应用程序及其依赖项打包成一个容器,使得应用程序在不同的环境中都能够快速可靠地部署和运行。这种容器化技术可以大大简化应用程序的部署和管理,提高应用程序的可移植性和安全性。使用Docker可以轻松地构建、运行和管理容器化的应用程序。

(三)Docker部署的优势

        Docker部署带来了优势,使Docker成为现代软件开发和运维中不可或缺的工具,具体包括如下:

1、轻量级和可移植性

        (1)Docker容器是基于镜像的,这些镜像包含了应用程序及其所有依赖项,使得应用程序可以在任何Docker环境中运行,无需担心依赖项冲突或缺失。

        (2)容器是轻量级的,因为它们共享宿主机的内核,相比于虚拟机,它们需要更少的资源。

2、快速部署和扩展

        (1)使用Docker,开发人员可以构建一次镜像,并在多个环境中运行它,从而加快部署速度。

        (2)Docker的容器化架构使得水平扩展变得简单,只需启动更多的容器实例即可。

3、一致性

        (1)Docker通过确保应用程序在所有环境中的运行方式相同,从而提高了开发、测试和生产环境之间的一致性。

        (2)容器化还允许开发人员在不同的机器上获得相同的开发环境,减少了“在我的机器上运行正常的问题。

4、版本控制

        (1)Docker镜像可以被版本化和标记,使得回滚到以前的版本变得简单。

        (2)通过使用Docker Hub或其他容器仓库,开发人员可以轻松地共享和管理镜像。

5、安全性

        (1)Docker提供了隔离性,确保容器内的应用程序不会影响到宿主机或其他容器。

        (2)通过使用安全的镜像构建过程、最小权限原则和内容信任,Docker可以进一步提高安全性。

6、资源隔离

        (1)Docker容器有自己的文件系统、网络栈和进程空间,这使得它们之间的隔离性很强。

        (2)这种隔离性使得容器更加安全,并且可以防止一个容器中的恶意软件或错误影响到其他容器或宿主机。

7、简化团队协作

        (1)Docker允许开发人员使用相同的工具集和相同的配置来构建、测试和部署应用程序,从而简化了团队协作。

        (2)开发人员可以轻松地分享他们的开发环境,使得其他人能够更容易地理解和修改代码。

8、多容器并行

        Docker允许在同一台机器上运行多个容器,每个容器都像一个独立的虚拟机。这使得在单个物理或虚拟服务器上实现多租户成为可能。

9、易于管理和监控

        Docker提供了丰富的工具和API来管理和监控容器,使得运维人员可以轻松地查看容器的状态、日志和资源使用情况。

二、部署过程

(一)安装docker并设置开机启动

        yum install -y docker-ce docker-ce-cli containerd.io

        systemctl start docker

        systemctl enable docker

(二)导入docker镜像

1、将平台的docker部署包放到环境中解压并导入镜像

   docker load < jiangkong-test.tar

2、导入完成后查看镜像

        docker images

           实际操作结果如下:

(三)启动镜像

1、使用命令启动镜像


[root@ecs-52a1 home]#
[root@ecs-52a1 home]#
[root@ecs-52a1 home]#
[root@ecs-52a1 home]#
[root@ecs-52a1 home]#/usr/bin/docker run -it -d --net=host  --privileged=true --name jiankong-test jiangkong-test:v1 /sbin/init

        其中参数含义如下:

   --net=host表示容器将会使用宿主机的IP和端口

   --privileged=true 特权模式,在容器中获得更高的系统权限,用于修改一些系统参数

2、检查容器是否正常启动

   docker ps

        实际操作结果如下:

     

3、查看服务端口是否正常启动

   netstat -lntup|grep 26089

   netstat -lntup|grep 26088

         实际操作结果如下:

三、部署验证

        部署完成后,通过web客户端访问,可以查看实时视频,如下: 

        功能正常,通过容器部署成功,docker快速部署应用系统完成。


文章正下方可以看到我的联系方式:鼠标“点击” 下面的 “威迪斯特-就是video system 微信名片”字样,就会出现我的二维码,欢迎沟通探讨。


相关文章:

Linux应用系统快速部署:docker快速部署linux应用程序

目录 一、背景 &#xff08;一&#xff09;引入docker的起因 &#xff08;二&#xff09;docker介绍 &#xff08;三&#xff09;Docker部署的优势 1、轻量级和可移植性 2、快速部署和扩展 3、一致性 4、版本控制 5、安全性 6、资源隔离 7、简化团队协作 8、多容器…...

三目运算符中间的表达式可以省略吗(a?:c)?

熟悉C语言的童靴对三目运算符都非常熟悉&#xff0c;a? b : c; 如果a为true&#xff0c;则整个运算符的值为b,否则为c;那么问题来了&#xff0c;三目运算符中间的表达式可以省略吗?即a? : c; 1、linux内核中出现的省略情况 本人在阅读内核代码是发现了下面的代码: preferr…...

android 彩虹进度条自定义view实现

实现一个彩虹色进度条功能&#xff0c;不说明具体用途大家应该能猜到。想找别人造的轮子&#xff0c;但是没有合适的&#xff0c;所以决定自己实现一个。 相关知识 android 自定义view LinearGradient 线性渐变 实现步骤 自定义view 自定义一个TmcView类继承View 重写两…...

免费一年SSL证书申请——建议收藏

免费一年SSL证书申请——建议收藏 获取免费一年期SSL证书其实挺简单的 准备你的网站&#xff1a; 确保你的网站已经有了域名&#xff0c;而且这个域名已经指向你的服务器。还要检查你的服务器支持HTTPS&#xff0c;也就是443端口要打开&#xff0c;这是HTTPS默认用的。 验证域…...

【docker1】指令,docker-compose,Dockerfile

文章目录 1.pull/image&#xff0c;run/ps&#xff08;进程&#xff09;&#xff0c;exec/commit2.save/load&#xff1a;docker save 镜像id&#xff0c;不是容器id3.docker-compose&#xff1a;多容器&#xff1a;宿主机&#xff08;eth0网卡&#xff09;安装docker会生成一…...

Flutter中的异步和多进程

Flutter 是一个用于创建高性能、高保真度移动应用的框架,它使用 Dart 编程语言。 在 Flutter 中,异步和多进程是两种不同的概念,用于解决不同的问题。 异步 (Asynchronous) 异步编程是一种编程范式,允许代码在等待操作完成(如网络请求、文件 I/O)时继续执行其他任务,而不…...

学习C++第二天

1.缺省参数 缺省参数的概念&#xff1a; 缺省参数是声明或定义函数时为函数的参数指定一个缺省值。在调用该函数时&#xff0c;如果没有指定实参则采用该形参的缺省值&#xff0c;否则使用指定的实参。 void show(int a 10) {cout << a << endl; }int main() {sho…...

解析Java中1000个常用类:AbstractSet类,你学会了吗?

推荐一个我自己写的小报童专栏导航网站: http://xbt100.top 收录了生财有术项目精选、AI海外赚钱、纯银的产品分析等专栏,陆续会收录更多的专栏,欢迎体验~复制URL可直达。 以下是正文。 在 Java 集合框架中,AbstractSet 是一个重要的抽象类,为实现自定义的集合(Set)提…...

Nginx基础概念和常用操作

文章目录 1. 安装、启动、连接2. 快速尝试部署网站3. 配置文件1. nginx.conf全局配置事件模块HTTP 模块性能优化建议 2. default.confserver 块基本设置日志设置根路径设置 4. 反向代理1. 模拟3个Web2. 链接 5. 负载均衡1. 加权轮询&#xff0c;Weighted Round Robin2. 最少连接…...

圈复杂度是什么?go语言调整圈复杂度举例

圈复杂度&#xff08;也称为循环复杂度或McCabe复杂度&#xff09;是衡量程序复杂性的一个指标&#xff0c;它通常与代码中的控制流结构&#xff08;如条件语句、循环和函数调用&#xff09;的数量相关。在Go语言中&#xff0c;你可以通过重构代码来降低圈复杂度&#xff0c;从…...

设计模式4-模版方法

设计模式 重构获得模式重构的关键技法1. 静态转动态2. 早绑定转晚绑定3. 继承转组合4. 编译时依赖转运行时依赖5. 紧耦合转松耦合 组件协助动机模式定义结构 要点总结。 例子示例解释&#xff1a; 重构获得模式 设计模式的目的是应对变化&#xff0c;提高复用 设计模式的要点…...

yii2 ActiveForm使用技巧

持续更新&#xff1a; 1、搜索输入框&#xff1a;form-inline <?php $form ActiveForm::begin([action > [index],method > get,options > [class > form-inline] &#xff08;增加此行代码&#xff09; ]); ?>...

【面试】基本数据类型的包装类缓存

目录 1. 说明2. Integer类分析2.1 代码块2.2 字节码2.3 分析2.4 valueOf方法 1. 说明 1.在java中&#xff0c;基本数据类型的包装类&#xff08;Integer、Byte、Character、Short、Long、Boolean&#xff09;的某些值会被缓存。2.以提高性能并减少内存使用。3.这种缓存机制是自…...

6月20日(周四)A股行情总结:A股险守3000点,恒生科技指数跌1.6%

A股三大股指走弱&#xff0c;科创板逆势上扬&#xff0c;半导体板块走强&#xff0c;多股20CM涨停。中芯国际港股涨超1%。恒生科技指数跌超1%。离岸人民币对美元汇率小幅走低&#xff0c;20日盘中最低跌至7.2874&#xff0c;创下2023年11月中旬以来的新低&#xff0c;随后收复部…...

Parallels Desktop 19 for mac破解版安装激活使用指南

Parallels Desktop 19 for Mac 乃是一款适配于 Mac 的虚拟化软件。它能让您在 Mac 计算机上同时运行多个操作系统。您可借此创建虚拟机&#xff0c;并于其中装设不同的操作系统&#xff0c;如 Windows、Linux 或 macOS。使用 Parallels Desktop 19 mac 版时&#xff0c;您可在 …...

JExcel API使用笔记

JExcel API使用笔记 JExcel是一个开源的支持excel的java类库&#xff0c;广泛利用其api来生成excel报表 API基本使用 1.创建excel文件 workbook Workbook.createWorkbook(file);//传入file文件2.创建sheet页 WritableSheet sheet workbook.createSheet("记录表&quo…...

springCloudAlibaba之分布式网关组件---gateway

gateway-网关 网关spring cloud gatewaygateway初体验gateway整合nacos简写方式 内置路由断言工厂内置断言工厂 自定义路由断言工厂自定义路由工厂 内置/自定义过滤器典型内置过滤器自定义过滤器 全局过滤器自定义全局过滤器 请求日志记录&跨域处理Gateway跨域配置&#xf…...

Springboot项目jar加密

部署的程序进行加密&#xff0c;防止第三方非法拷贝走项目进行二次开发或部署。我们知道java代码编译后生成的以.class结尾的字节码文件或者.jar/.war结尾的可执行文件都是可以反编译生成.java文件的&#xff0c;虽然反编译后生成的.java文件和原本的.java文件有些微差别&#…...

【React】高阶组件

概述 高阶组件并非一个组件&#xff0c;而是增强组件功能的一个函数。 高阶组件的作用是对多个组件公共逻辑进行横向抽离。 高阶组件 – React (reactjs.org) 示例 ChildCom1.jsx import React from react;function ChildCom1(props) {return (<div>这是子组件1<d…...

全面理解-Flutter(万字长文,深度解析)

1、Web 性能差&#xff0c;跟原生 App 存在肉眼可见的差距&#xff1b; 2、React Native 跟 Web 相比&#xff0c;支持的能力非常有限&#xff0c;特定长场景问题&#xff0c;需要三端团队一个一个处理&#xff1b; 3、Web 浏览器的安卓碎片化严重&#xff08;感谢 X5&#x…...

港科喜讯|[港科百创]参赛项目上市!视觉语言大模型第一股诞生!

2026年3 月 30 日&#xff0c;山东极视角科技股份有限公司&#xff08;股票代码&#xff1a;6636.HK&#xff09;在香港联合交易所主板正式上市。这家曾斩获香港科技大学第六届百万奖金国际创业大赛深圳赛区一等奖的科创企业&#xff0c;同时也是香港科大"创科行"(第…...

BYD 高通8155 OTA项目 我写的一篇专利

草根不要在BYD写专利&#xff0c;我24年1月初开始撰写&#xff0c;24年6月份才提交到专利公司&#xff0c;被驳回是因为有对比文件公开了我的发明点&#xff0c;是重庆赛力斯 4月份公开的&#xff0c;部门内部流程审核极慢&#xff0c;集团IPR找各种理由能拖上你半年&#xff0…...

FastAPI ORM 封装:FastAPI 与 SQLModel 的无缝集成与快速开发

更多内容请见: 《Python Web项目集锦》 - 专栏介绍和目录 核心价值: SQLModel 是 FastAPI 作者 Tiangolo 为 Python Web 开发量身打造的"ORM 终极解决方案",它将 Pydantic 模型与 SQLAlchemy 深度融合,让开发者在编写 API 时无需在数据库模型和 API 模型之间反复…...

基于vue的非遗文化传承平台[vue]-计算机毕业设计源码+LW文档

摘要&#xff1a;非物质文化遗产&#xff08;非遗&#xff09;作为民族文化的重要组成部分&#xff0c;承载着人类社会的文明和历史记忆。随着现代社会的快速发展&#xff0c;非遗文化的传承面临着诸多挑战。为了更好地保护和传承非遗文化&#xff0c;本文设计并实现了一个基于…...

【原创改进代码】考虑电动汽车移动储能特性的多区域电网功率波动平抑优化调控附python代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 &#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室 &#x1f447; 关注我领取海量matlab电子…...

C语言回调函数在TCP客户端中的应用与实践

1. 回调函数基础概念解析回调函数是C语言中一种强大的编程机制&#xff0c;它允许我们将函数作为参数传递给其他函数。这种设计模式在现代编程中极为常见&#xff0c;特别是在事件驱动编程、异步操作和模块化设计中。1.1 回调函数的本质回调函数本质上是一个通过函数指针调用的…...

Vue 组态化管道流动效果:从零构建现代化流体模拟系统

1. 为什么需要管道流动模拟系统 在工业自动化和教学演示领域&#xff0c;可视化管道系统是一个常见需求。想象一下化工厂的液体输送管道、城市供水系统或者实验室的流体实验装置&#xff0c;这些场景都需要直观展示流体在管道中的流动状态。传统做法是使用静态图片或简单动画&a…...

个人知识库构建:OpenClaw+千问3.5-27B自动整理碎片化笔记

个人知识库构建&#xff1a;OpenClaw千问3.5-27B自动整理碎片化笔记 1. 为什么需要智能知识管理 作为一个常年被信息过载困扰的技术写作者&#xff0c;我的笔记系统曾经像一座杂乱无章的仓库。微信收藏夹里躺着2000未读文章&#xff0c;Obsidian里有500多个零散笔记&#xff…...

iPhone上跑Transformer太慢?试试EfficientFormer-L1,实测延迟比MobileViT快一倍

iPhone端Transformer模型加速实战&#xff1a;EfficientFormer-L1性能优化解析 移动端AI开发者常面临一个核心矛盾&#xff1a;如何在有限的计算资源下&#xff0c;既保持模型精度又实现实时推理&#xff1f;传统方案往往需要在MobileNet等轻量卷积网络和视觉Transformer&#…...

从模电理论到商用落地,应届生必做的无线充项目,H 桥 / LC 谐振 + QI 协议全栈详解

很多初学嵌入式的同学、正在准备秋招的电子信息类应届生&#xff0c;都会遇到两个核心困境&#xff1a;一是模电学了 H 桥、LC 谐振&#xff0c;只会背公式做题&#xff0c;根本不知道怎么在真实产品里落地&#xff1b;二是学完单片机只会点灯&#xff0c;写的都是流水账代码&a…...