华为云云耀云服务器L实例评测|华为云耀云服务器L实例评测包管理工具安装软件(六)
七、华为云耀云服务器L实例评测包管理工具安装软件:
根据企业级项目架构图所示,本章主要是安装公司企业项目的基本环境LNMP,相关的包管理器Composer、Node、Npm、Yarn安装,评测一下包管理工具安装软件是否存在问题,如果没有问题,将会尝试用Shell进行环境的安装。
1. 准备工作:
首先检查一下服务器是否默认安装了LNMP环境,可以看环境很干净,并没有安装太多默认的软件,有利于进行定制化一些环境的需求。
因为公司的软件架构是采用的是SOA架构,会有多台内网服务器实例,一般新采购的服务器,需要进行更新主机名来标识服务器,这样方便在后续的维护中进行很好的标识。
2. 安装PHP 7.3、PHP 7.3 -FPM、PHP 7.3 相关扩展:
PHP是一种通用开源脚本语言,特别适用于Web开发。它可以嵌入HTML中,可以运行于服务器端,并与数据库交互,生成动态网页。公司使用的是PHP的Laravel框架,Laravel框架可低代码快速开发CRM、ERP、OA,行业软件等企业应用,为企业降低运营管控成本,平台有强大的代码生成工具、特色的流程引擎、丰富的表单控件等快速开发功能。
# 1. 添加对其他软件源的管理
# -y 标志表示自动同意安装,没有它,将在终端窗口中收到每次安装的提示
sudo apt -y install software-properties-common# 2. 安装存储库 ppa:ondrej/php,它将提供所有 PHP 版本
sudo add-apt-repository ppa:ondrej/php# 3. 更新apt-get源,以便包管理器可以看到新列出的包
sudo apt-get update# 4. 安装php、fpm和php相关扩展
sudo apt-get install -y php7.3 php7.3-fpm php7.3-xml php7.3-mbstring php7.3-gd php7.3-mcrypt php7.3-curl php7.3-mysql# 5. 查看PHP安装的版本及安装的PHP扩展:
php -version
php -m
查看PHP安装的版本及安装的PHP扩展:
3. 安装Nginx:
Nginx是一个web服务器也可以用来做负载均衡及反向代理使用,也用于大量的负载均衡场景。
sudo apt-get install -y nginx
4. 源码安装node、npm、yarn:
Node是
# 下载源码包
wget https://cdn.npmmirror.com/binaries/node/latest-v16.x/node-v16.15.1-linux-x64.tar.xz
# 解压
tar -xf node-v16.15.1-linux-x64.tar.xz
# 移动到local目录
mv node-v16.15.1-linux-x64 /usr/local/node
# 软链接到bin中命令
ln -s /usr/local/node/bin/node /usr/bin/node
ln -s /usr/local/node/bin/npm /usr/bin/npm
# 安装yarn并软链接到bin中命令
npm install yarn -g
ln -s /usr/local/node/bin/yarn /usr/bin/yarn
# 查看npm、node、yarn版本
npm -v
node -v
yarn -v
以前在本地如果使用vagrant安装一个ubuntu的虚拟机的话,首先需要进行替换apt源,比如阿里源、腾讯源、清华源等,经过查看/etc/apt/sources.list文件,默认直接使用的是华为源,速度来说非常的快,上面可以看到下载速度平均达到了1.56MB/s。
5. 源码安装PHP的包管理工具Composer:
Composer 是 PHP5.3以上 的一个依赖管理工具,它允许你声明项目所依赖的代码库,可以在项目中为你安装它们,Composer 不是一个包管理器。
# 下载PHP包管理工具composer二进制程序文件
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
# 移动到启动程序bin目录
sudo mv composer.phar /usr/local/bin/composer
# 查看composer版本
composer --version
6. 重装系统:
如上使用包管理工具进行安装LNMP相关软件,可以很顺畅的完成,因为,平时常用shell脚本安装环境比较多,接下来需要初始化环境,再测试shell安装php、nginx、node等程序。
重装系统的功能平时也比较常用,有一次公司的服务器不幸被攻击,按照正常修复的时间来算,可能会花费大量的时间、人力来完成,如,清除依赖、版本升级、修复坏的文件。如果使用重装系统,再加上平时维护的shell脚本,即可快速的复制一套环境,以防止影响生产环境功能。当然,公司在Java体系是采用了K8S集群部署,通过Dockerfile更加便捷、快捷的复制生环境。
7. Shell脚本安装:
Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动、挂起、停止甚至是编写一些程序。
#! /bin/bashecho '=== start install ========'# 1. 添加对其他软件源的管理
# -y 标志表示自动同意安装,没有它,将在终端窗口中收到每次安装的提示
sudo apt -y install software-properties-common# 2. 安装存储库 ppa:ondrej/php,它将提供所有 PHP 版本
sudo add-apt-repository ppa:ondrej/php# 3. 更新apt-get源,以便包管理器可以看到新列出的包
sudo apt-get update# 4. 安装php、fpm和php相关扩展
sudo apt-get install -y php7.3 php7.3-fpm php7.3-xml php7.3-mbstring php7.3-gd php7.3-mcrypt php7.3-curl php7.3-mysql# 5. 安装nginx
sudo apt-get install -y nginx# 6. 源码安装node、npm、yarn
wget https://cdn.npmmirror.com/binaries/node/latest-v16.x/node-v16.15.1-linux-x64.tar.xz
tar -xf node-v16.15.1-linux-x64.tar.xz
mv node-v16.15.1-linux-x64 /usr/local/node
ln -s /usr/local/node/bin/node /usr/bin/node
ln -s /usr/local/node/bin/npm /usr/bin/npm
npm install yarn -g
ln -s /usr/local/node/bin/yarn /usr/bin/yarn# 7. 安装composer
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composerecho '=== end install ========'# 8. 查看版本
php -version
nginx -v# 查看npm、node、yarn版本
npm -v
node -v
yarn -v
composer --version
7. 小结:
通过对华为云耀云服务器L实例安装符合公司企业项目的LNMP环境,并没有发现不满足需求的,安装的过程中,默认自带的华为云源下载的速度非常的快,是值得推荐的。如源码安装、apt-get包管理安装、shell脚本安装都能很好的支持。
以下为安装过的软件清单:
以下为整体测试进度:
相关文章:

华为云云耀云服务器L实例评测|华为云耀云服务器L实例评测包管理工具安装软件(六)
七、华为云耀云服务器L实例评测包管理工具安装软件: 根据企业级项目架构图所示,本章主要是安装公司企业项目的基本环境LNMP,相关的包管理器Composer、Node、Npm、Yarn安装,评测一下包管理工具安装软件是否存在问题,如果…...
在PYTHON中用zlib模块对文本进行压缩,写入图片的EXIF中,后在C#中读取EXIF并用SharpZipLib进行解压获取压缩前文本
在PYTHON中用zlib模块对文本进行压缩长度,写入图片的EXIF中,并在C#中读取EXIF后用SharpZipLib进行解压缩获取压缩前文本。 PS:当压缩后的字节数组长度为单数时,无法写入EXIF的XPComment中,需要在后面增加一个以utf-8编码的空格&a…...

centos / oracle Linux 常用运维命令讲解
目录 1.shell linux常用目录: 2.命令格式 3.man 帮助 4.提示符 5.echo输出字符串或变量值 6.date显示及设置系统的时间或日期 7.重启系统 8.关闭系统 9.登录注销 10.wget 下载文件 11.ps 查看系统的进程 12.top动态监视进程信息和系统负载等信息 13.l…...

EMNLP 2023 录用论文公布,速看NLP各领域最新SOTA方案
EMNLP 2023 近日公布了录用论文。 开始前以防有同学不了解这个会议,先简单介绍介绍:EMNLP 是NLP 四大顶会之一,ACL大家应该都很熟吧,EMNLP就是由 ACL 下属的SIGDAT小组主办的NLP领域顶级国际会议,一年举办一次。相较于…...

互联网Java工程师面试题·Java 并发编程篇·第三弹
目录 26、什么是线程组,为什么在 Java 中不推荐使用? 27、为什么使用 Executor 框架比使用应用创建和管理线程好? 27.1 为什么要使用 Executor 线程池框架 27.2 使用 Executor 线程池框架的优点 28、java 中有几种方法可以实现一个线程…...
mac jdk的环境变量路径,到底在哪里?
在mac 电脑中,直接执行 java -version 显示Jdk的版本为1.8 然后打印Java环境变量 在终端中执行 echo $JAVA_HOME 1、情况一:发现环境变量是空的 我草,没配置环境变量怎么能使用Java ,和查看jdk版本 2、情况二:环…...

PyQt5 PyQt6 Designer 的安装
pip国内的一些镜像 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 豆瓣(douban) http://pypi.douban.com/simple/ 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/ 中国科学技术大学 http://pypi.mirrors.ustc.…...
数据库:Hive转Presto(四)
这次补充了好几个函数,并且新加了date_sub函数,代码写的比较随意,有的地方比较繁琐,还待改进,而且这种文本处理的东西,经常需要补充先前没考虑到的情况,要经常修改。估计下一篇就可以补充完所有…...

16基于otsuf方法的图像分割,程序已调通,可更换自己的图片进行分割,程序具有详细的代码注释,可轻松掌握。基于MATLAB平台,需要直接拍下。
基于otsuf方法的图像分割,程序已调通,可更换自己的图片进行分割,程序具有详细的代码注释,可轻松掌握。基于MATLAB平台,需要直接拍下。 16matlab图像处理图像分割 (xiaohongshu.com)...

2、使用阿里云镜像加速器提升Docker的资源下载速度
1、注册阿里云账号并登录 https://www.aliyun.com/ 2、进入个人控制台,找到“容器镜像服务” 3、在“容器镜像服务”中找到“镜像加速器” 4、在右侧列表中会显示你的加速器地址,复制地址 5、进入/etc/docker目录,编辑daemon.json࿰…...

贴片电容材质的区别与电容的主要作用
一、贴片电容材质NPO、COG、X7R、X5R、Y5V、Z5U区别 主要是介质材料不同,不同介质种类由于它的主要极化类型不一样,其对电场变化的响应速度和极化率也不一样。在相同的体积下的容量就不同,随之带来的电容器介质的损耗、容量的稳定性也就不同…...

flink1.15 savepoint 超时报错 java.util.concurrent.TimeoutException
savepoint命令 flink savepoint e04813d4e7480c526912eb4d32bba510 hdfs://flink/flink/migration/savepoint56650 -Dyarn.application.id=application_1683808492336_1222报错内容 org.apache.flink.util.FlinkException: Triggering a savepoint for the job e04813d4e7480…...

并发编程——1.java内存图及相关内容
这篇文章,我们来讲一下java的内存图及并发编程的预备内容。 首先,我们来看一下下面的这两段代码: 下面,我们给出上面这两段代码在运行时的内存结构图,如下图所示: 下面,我们来具体的讲解一下。…...

Android studio安装详细教程
Android studio安装详细教程 文章目录 Android studio安装详细教程一、下载Android studio二、安装Android Studio三、启动Android Studio 一、下载Android studio Android studio安装的前提是必须保证安装了jdk1.8版本以上 1、打开android studio的官网:Download…...

Jetson Orin NX 开发指南(7): EGO-Swarm 的编译与运行
一、前言 EGO-Planner 浙江大学 FAST-LAB 实验室的开源轨迹规划算法是,受到 IEEE Spectrum 等知名科技媒体的报道,其理论技术较为前沿,是一种不依赖于ESDF,基于B样条的规划算法,并且规划成功率、算法消耗时间、代价数…...

nginx的重定向
nginx重定向--rewrite重写功能介绍 rewrite 的功能介绍 rewrite功能就是,使用nginx提供的全局变量或自己设置的变量,结合正则表达式和标记位实现URL重写以及重定向。 比如:更换域名后需要保持旧的域名能跳转到新的域名上、某网页发生改变需…...
理解Go中的数组(Array)和切片(Slice)
引言 在Go中,数组和切片是由有序的元素序列组成的数据结构。当需要处理许多相关值时,这些数据集非常适合使用。它们使你能够将本应放在一起的数据放在一起,压缩代码,并一次性对多个值执行相同的方法和操作。 尽管Go中的数组和切…...

计算机毕业设计选什么题目好?springboot 高校学生综合测评管理系统
✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…...
在liunx下读取串口的数据
1. 设置串口参数 首先是通过stty工具设置串口参数: sudo stty -F /dev/ttyUSB0 比特率 cs8 -cstopb如:sudo stty -F /dev/ttyUSB0 115200 cs8 -cstopb. 注意: 需要注意的是这里需要sudo权限; 2. 读取串口数据 然后读取串口的…...

Python中使用IDLE调试程序
在IDLE中,使用菜单栏中的“Debug”对IDLE打开的python程序进行调试。 1 打开调试开关 选择IDLE菜单栏的“Debug->Debugger”,如图1①所示;此时在IDLE中会显示“[DEBUG ON]”,即“调试模式已打开”,如图1②所示&am…...

MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...

微服务商城-商品微服务
数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

HDFS分布式存储 zookeeper
hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架,允许使用简单的变成模型跨计算机对大型集群进行分布式处理(1.海量的数据存储 2.海量数据的计算)Hadoop核心组件 hdfs(分布式文件存储系统)&a…...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
快刀集(1): 一刀斩断视频片头广告
一刀流:用一个简单脚本,秒杀视频片头广告,还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农,平时写代码之余看看电影、补补片,是再正常不过的事。 电影嘛,要沉浸,…...

CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!
本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...