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 微信名片”字样,就会出现我的二维码,欢迎沟通探讨。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/32838.shtml

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

相关文章

VMware虚拟机三种网络模式设置 - Bridged(桥接模式)

一、前言 由于linux目前很热门&#xff0c;越来越多的人在学习linux&#xff0c;但是买一台服务放家里来学习&#xff0c;实在是很浪费。那么如何解决这个问题&#xff1f;虚拟机软件是很好的选择&#xff0c;常用的虚拟机软件有vmware workstations和virtual box等。 在使用虚…

基于imx6ull开发板 移植opencv4.7.0

一、概述 本章节是针对opencv-4.7.0移植到Linux系统&#xff0c;运行在正点原子-I.MX6U ALPHA开发板 上&#xff0c;详细的移植流程如下。 二、环境要求 2.1 硬件环境 正点原子-I.MX6U ALPHA开发板虚拟机&#xff1a;VMware 2.2 软件环境 Ubuntu系统要求&#xff1a;20.0…

DIVE INTO DEEP LEARNING 50-55

文章目录 50. semantic segmentation50.1 Basic concepts50.2 Major application 51. Transposed convolution51.1 Basic concepts51.2 Major role51.3 Implementation steps and application areas51.4 Transposed convolution51.5 Transposed convolution is a type of convo…

谁说串口通信波特率越高越好?

在电子世界里&#xff0c;串口通信就像是电子设备之间的“悄悄话”&#xff0c;它们通过串行数据传输来交换信息。但你知道吗&#xff1f;串口通信的波特率并不是越高越好&#xff0c;这事儿得好好聊聊。 1.什么是串口通信&#xff1f; 串口通信&#xff0c;就像它的名字一样&a…

深度学习11-13

1.神经元的个数对结果的影响&#xff1a; &#xff08;http://cs.stanford.edu/people/karpathy/convnetjs/demo/classify2d.html&#xff09; &#xff08;1&#xff09;神经元3个的时候 &#xff08;2&#xff09;神经元是10个的时候 神经元个数越多&#xff0c;可能会产生…

计算机组成原理 —— 存储系统(DRAM和SRAM,ROM)

计算机组成原理 —— 存储系统&#xff08;DRAM和SRAM&#xff09; DRAM和SRAMDRAM的刷新DRAM地址复用ROM&#xff08;Read-Only Memory&#xff08;只读存储器&#xff09;&#xff09; 我们今天来看DRAM和SRAM&#xff1a; DRAM和SRAM DRAM&#xff08;动态随机存取存储器&…

展示3D模型的网站哪个好?

如果仅仅是模型展示&#xff0c;目前国内外值得推荐的无非就是那么几个&#xff0c;它们各自有不同的特点和优势&#xff1a; 1、Sketchfab&#xff1a;Sketchfab是一个知名的3D模型展示平台&#xff0c;提供了海量的模型资源和出色的3D展示效果。用户无需安装任何插件即可在线…

Spring Cloud - nacos +ubuntu环境搭建

1、安装ubuntu虚拟环境 VMware虚拟机安装Ubuntu与配置Ubuntu&#xff08;超详细教程&#xff09; 2、docker环境安装 1、apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common 2、curl -fsSL https://mirrors.ustc.edu.cn/docke…

Maven的依赖传递、依赖管理、依赖作用域

在Maven项目中通常会引入大量依赖&#xff0c;但依赖管理不当&#xff0c;会造成版本混乱冲突或者目标包臃肿。因此&#xff0c;我们以SpringBoot为例&#xff0c;从三方面探索依赖的使用规则。 1、 依赖传递 依赖是会传递的&#xff0c;依赖的依赖也会连带引入。例如在项目中…

自动驾驶仿真测试用例表格示例 ACC ELK FCW

自动驾驶仿真测试用例表格示例 测试用例概览 本测试用例表格涵盖了自动驾驶系统中多个关键功能和场景的测试&#xff0c;旨在确保系统在不同条件下的表现和稳定性。 用例编号测试项目测试描述预期结果实际结果通过/失败TC-001ACC功能测试在高速公路上启用ACC&#xff0c;测试车…

SCI一区级 | Matlab实现BO-Transformer-LSTM多变量时间序列预测

SCI一区级 | Matlab实现BO-Transformer-LSTM多变量时间序列预测 目录 SCI一区级 | Matlab实现BO-Transformer-LSTM多变量时间序列预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.【SCI一区级】Matlab实现BO-Transformer-LSTM多变量时间序列预测&#xff0c;贝叶斯…

力扣SQL50 超过5名学生的课

Problem: 596. 超过5名学生的课 Code select class from courses group by class having count(distinct student) > 5;

高通安卓12-固件升级

下载步骤 第一步 格式化 「下载一次即可&#xff1b;能开机能下载的板子 忽略这一步&#xff0c;直接执行第二步即可」 QFIL工具配置为UFS类型&#xff0c;勾选Provision&#xff0c;如下图&#xff1a; Programmer选择prog_firehose_ddr.elf&#xff0c;Provision Xml选择prov…

【STM32-新建工程-CubeMX】

STM32-新建工程-CubeMX ■ CubeMX 生产工程 ■ CubeMX 生产工程

QT事件处理系统之五:自定义事件的发送案例 sendEvent和postEvent接口

1、案例 双击窗口,会发送 自定义事件,然后在事件过滤中心进行拦截处理自定义事件。 2、核心代码 /*解释:双击窗口时,将产生双击事件,然后该事件被包裹成一个对象,随后将会被发往event事件中心,然后进行事件的处理(Widget对象);因为m_lineEdit开启了事件过滤机制,所…

Linux - 利用/proc/sys/vm/drop_caches实现手工清理系统缓存

文章目录 现象buff/cache 的作用和含义分析 buff/cache 占用大量内存的原因是否需要清理缓存及其方法 命令清理缓存方法1. sync 命令2. echo 3>/proc/sys/vm/drop_caches 命令 注意事项小结 现象 使用free 命令&#xff0c;看到 buff/cache 占用很多 。 free 命令用于显示系…

第一个Flask程序

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 一切准备就绪&#xff0c;现在我们开始编写第一个Flask程序&#xff0c;由于是第一个Flask程序&#xff0c;当然要从最简单的“Hello World&#xff…

GPT-5大幅推迟?OpenAI CTO称将在2025年底到2026年初推出

GPT-5大幅推迟&#xff1f;OpenAI CTO称将在2025年底到2026年初推出 OpenAI CTO同时透露&#xff0c;GPT-5性能将有巨大飞跃&#xff0c;在某些特定任务中达到“博士水平”智能&#xff0c;此前市场曾预测GPT-5可能在2023年底或2024年夏季发布。 一再跳票的GPT-5可能大幅推迟…

JetBrains IDEA 新旧UI切换

JetBrains IDE 新旧UI切换 IntelliJ IDEA 的老 UI 以其经典的布局和稳定的性能&#xff0c;成为了许多开发者的首选。而新 UI 则在此基础上进行了全面的改进&#xff0c;带来了更加现代化、响应式和高效的用户体验。无论是新用户还是老用户&#xff0c;都可以通过了解和适应这…

101.qt qml-自定义日历控件2-附带动画效果

黑色风格截图如下所示: 白色风格如下所示: GIF效果如下所示: 1.控件使用介绍 QianWindow2.5版本及以上提供,源码位于:qrc:/common/qmlQianDateTime/QianCalendarInputField.qml QianWindow2.5版本及以上提供,示例使用代码位于:qrc:/pages/QianControlPages/QianDateTimeP…