华为云云耀云服务器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,行业软件等企业应用,为企业降低运营管控成本,平台有强大的代码生成工具、特色的流程引擎、丰富的表单控件等快速开发功能。

shell 复制代码
# 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服务器也可以用来做负载均衡及反向代理使用,也用于大量的负载均衡场景。

js 复制代码
sudo apt-get install -y nginx

4. 源码安装node、npm、yarn:

Node是

js 复制代码
# 下载源码包
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 不是一个包管理器。

js 复制代码
# 下载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来启动、挂起、停止甚至是编写一些程序。

js 复制代码
#! /bin/bash

echo '=== 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/composer

echo '=== end install ========'

# 8. 查看版本
php -version
nginx -v

# 查看npm、node、yarn版本
npm -v
node -v
yarn -v
composer --version

7. 小结:

通过对华为云耀云服务器L实例安装符合公司企业项目的LNMP环境,并没有发现不满足需求的,安装的过程中,默认自带的华为云源下载的速度非常的快,是值得推荐的。如源码安装、apt-get包管理安装、shell脚本安装都能很好的支持。

以下为安装过的软件清单:

以下为整体测试进度:

相关推荐
Michaelwubo20 分钟前
Docker dockerfile镜像编码 centos7
运维·docker·容器
远游客071326 分钟前
centos stream 8下载安装遇到的坑
linux·服务器·centos
好像是个likun1 小时前
使用docker拉取镜像很慢或者总是超时的问题
运维·docker·容器
LIKEYYLL2 小时前
GNU Octave:特性、使用案例、工具箱、环境与界面
服务器·gnu
AORO_BEIDOU3 小时前
单北斗+鸿蒙系统+国产芯片,遨游防爆手机自主可控“三保险”
华为·智能手机·harmonyos
云云3213 小时前
搭建云手机平台的技术要求?
服务器·线性代数·安全·智能手机·矩阵
云云3213 小时前
云手机有哪些用途?云手机选择推荐
服务器·线性代数·安全·智能手机·矩阵
cominglately3 小时前
centos单机部署seata
linux·运维·centos
CircleMouse3 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos
Karoku0664 小时前
【k8s集群应用】kubeadm1.20高可用部署(3master)
运维·docker·云原生·容器·kubernetes