基于Flexus X实例搭建Nginx网站服务

B站影视 2025-01-08 17:24 2

摘要:Flexus云服务器X实例是新一代面向中小企业和开发者打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。相较于Flexus应用服务器L实例,Flexus云服务器X实例的优势包含:提供丰富的

一、华为云Flexus X实例介绍

1. Flexus X实例简介

Flexus云服务器X实例是新一代面向中小企业和开发者打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。相较于Flexus应用服务器L实例,Flexus云服务器X实例的优势包含:提供丰富的公共镜像、可灵活自定义vCPU内存配比、智能感知业务动态升降配,负载范围更高等。

2. 应用场景

电商直播:基于Flexus X实例搭建电商交易平台,可以从容面对电商市场瞬息万变对的业务压力变化。企业建站:面向博客、论坛,和企业门户等业务场景,帮助企业传播价值信息,促进信息共享和交流,支撑用户建设多功能的传播和交互平台。个人开发测试:开发者在开发、测试过程中需要的环境资源,可以选择从云上提供。基于Flexus云服务器X实例搭建开发测试环境,更加便利,成本更优。游戏服务器:适用于搭建游戏后台服务器,强大算力轻松应对千人同时在线,同时平滑扩容可快速应对服务器玩家数量上涨诉求,超强的网络加速能力提升用户体验。

3. 产品优势

提供丰富的公共镜像,可灵活自定义镜像版本。智能感知业务动态升降配,负载范围更高。支持灵活自定义vCPU、内存实例规格。支持按需计费更精细和灵活的定价模式,可基于实际负载画像智能推荐规格。

二、购买Flexus云服务器X实例

1.购买Flexus云服务器X实例方法

以下是根据我个人的需求选购基础配置,可以参考如下进行购买:


(1)计费模式:选择包年/包月模式。
(2)区域和可用区:选择华北—北京四,可用区可以随机选择。
(3)实例规格:选择自定义配置,建议选择4核心CPU和12GB内存。
(4)镜像:选择公共镜像,推荐使用Huawei Cloud EulerOS 2.0 Standard 64 bit(10GiB)。可选一种服务加速(免费),可根据需要选择。
(5)存储:系统盘选择通用型SSD,建议选择100GB容量。
(6)网络:默认配置即可。
(7)安全组:默认配置即可。
(8)弹性公网IP:选择“现在购买”,带宽选择3Mbps。
(9)云服务器名称:可以自定义命名,也可以选择默认名称。
(10)登录凭证:设置自定义密码。
(11)云备份:暂不购买;

各位如有其它需求可自行增减配置
如图所示:






这边我已经成功连接!

2. Flexus云服务器X实例的基本管理

①关机与重启

首先进入到控制台,然后找到想要操作的云服务器资源。

点进来后我们可以看到我们所拥有的资源,并可以对其进行开关机\更改密码、配置等一系列操作

②续费设置

我们可以在更多这里看到费用选项可以根据个人需求进行续费或关闭操作,以避免不必要的消费。

三、本次实践说明

1. 本次环境介绍

云服务器厂商

云服务器类别

操作系统版本

Docker版本

部署项目

内网IP地址

Docker Compose版本

华为云

Flexus X实例

Rocky Linux 9.0

27.1.1

Nginx

192.168.0.130

v2.29.1

2. Nginx介绍

①Nginx简介

Nginx是一款高性能的Web服务器、反向代理服务器及电子邮件代理服务器,由Igor Sysoev开发,用于解决高并发连接问题,广泛应用于互联网领域。

②主要特点

高性能的异步非阻塞模型:采用事件驱动的异步非阻塞I/O模型,能高效处理大量并发连接,如在高流量网站中可轻松应对众多用户请求。出色的负载均衡能力:可将请求均匀分配到多个后端服务器,提高整体系统性能和可靠性,适用于大型分布式系统。灵活的反向代理功能:能隐藏后端服务器的真实IP,增强安全性,同时可根据规则转发请求,常用于优化网站架构。轻量级且资源占用少:相比其他服务器,占用系统资源较少,在资源有限的环境中也能稳定运行,适合小型项目或嵌入式设备。强大的稳定性和可靠性:具有良好的容错机制,在面对异常情况时能保持稳定运行,保障服务不间断,是企业级应用的可靠选择。热部署和快速重启:支持在线配置修改和快速重启,不影响正在运行的服务,方便进行服务器的维护和更新。丰富的模块扩展:拥有大量的第三方模块,可根据需求扩展功能,如实现URL重写、访问控制等,满足多样化的应用场景。

③主要使用场景

网站托管与服务:作为Web服务器直接提供网站内容的访问服务,以其高性能和稳定性保障网站的快速响应和可靠运行。负载均衡架构:在多台服务器组成的集群环境中,负责将用户请求均衡分配到各后端服务器,提高系统整体处理能力。反向代理与缓存:位于客户端和后端服务器之间,实现请求转发、缓存静态资源,提升访问速度和减轻后端服务器压力。API网关:为微服务架构中的API提供统一的入口和管理,包括认证、授权、流量限制等功能。流媒体服务:可用于直播、视频点播等流媒体应用的分发和传输,优化媒体流的传输效率和质量。安全防护:通过配置规则阻挡恶意请求和攻击,保护后端服务器的安全,如防止DDoS攻击等。企业内部应用:在企业内部网络中,为各种内部应用系统提供可靠的Web访问服务和接口管理。

四、部署Nginx项目

1. 拉取YesPlayMusic镜像

我们需要提前拉取 YesPlayMusic镜像,方便后续快速部署Docker应用。

[root@xiaoge888 ~]# docker pull nginx:latest
latest: Pulling from library/nginx
302e3ee49805: Pull complete
cd986b3703ae: Pull complete
34a52cbc3961: Pull complete
d1875670ac8a: Pull complete
af17adb1bdcc: Pull complete
97182578e5ec: Pull complete
67b9310357e1: Pull complete
Digest: sha256:4bd4d71918d2585145328193e1ac62d37d4a3d2dd16e6b7bf1fa265358eece86
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest

2. 新建Nginx配置文件

创建以下Nginx挂载目录

mkdir -p /home/docker/nginx/{conf,conf.d,html,logs}

在挂载目录/home/docker/nginx/conf目录下,新建nginx.conf 配置文件,内容如下:

user nginx;
worker_processes auto;

error_log /var/log/nginx/error.log notice;
pid /var/run/nginx.pid;

events {
worker_connections 1024;
}

http {
include /etc/nginx/mime.types;
default_type application/octet-stream;

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

access_log /var/log/nginx/access.log main;

sendfile on;
#tcp_nopush on;

keepalive_timeout 65;

#gzip on;

include /etc/nginx/conf.d/*.conf;

}

在挂载目录/home/docker/nginx/conf.d目录下,新建default.conf 配置文件,内容如下:

server {
listen 80;

location / {
root /usr/share/nginx/html;
index index.html index.htm;
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}

# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}

# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}

3. 编辑测试网页内容

在/home/docker/nginx/html目录下编辑测试网页内容,如下所示:

echo hello > html/index.html

4. 创建Nginx容器

Docker命令方式创建容器:

docker run -d --name nginx --restart always -p 8002:80 -v /home/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v/home/docker/nginx/conf.d:/etc/nginx/conf.d -v /home/docker/nginx/html:/usr/share/nginx/html -v /home/docker/nginx/logs:/var/log/nginx nginx

使用 docker compose方式创建容器,docker-compose.yaml文件如下:

version: '3.9'
services:
nginx:
image: nginx
volumes:
- '/home/docker/nginx/logs:/var/log/nginx'
- '/home/docker/nginx/html:/usr/share/nginx/html'
- '/home/docker/nginx/conf.d:/etc/nginx/conf.d'
- '/home/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf'
ports:
- '8002:80'
restart: always
container_name: nginx

在存放docker-compose.yaml文件的目录下,执行 docker compose up -d 命令,创建Nginx容器。

[root@xiaoge888 nginx]# docker compose up -d
WARN[0000] /home/docker/nginx/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 1/1
✔ Container nginx Started 0.2s

3. 查看容器状态

当创建Nginx容器完成后,我们需要检查该容器是否正常运行。执行以下命令,可以很方便查询Nginx容器是否正常运行。

[root@xiaoge888 nginx]# docker compose ps
WARN[0000] /home/docker/nginx/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
nginx nginx "/docker-entrypoint.…" nginx 7 minutes ago Up 14 seconds 0.0.0.0:8002->80/tcp, :::8002->80/tcp

五、安全组及防火墙设置工作

1. 设置防火墙和selinux

由于在测试环境,我们直接关闭防火墙和selinux。

sudo systemctl stop firewalld
sudo systemctl disable firewalld

sudo setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

2. 设置安全组规则

在华为云Flexus X实例的安全组设置页面,我们直接在入方向上放行8002端口。确认放行后,效果如下图所示。

六、访问Nginx服务

在本地浏览器:http://服务器IP地址:8002,使用我们Flexus X实例弹性公网IP地址替换后,即可正常访问到网站测试内容。

七、添加静态网站

7.1 添加静态网站内容

在宿主机/home/docker/nginx/html目录下,上传测试的静态网站内容。

[root@xiaoge888 html]# pwd
/home/docker/nginx/html
[root@xiaoge888 html]# ll
total 56
-rw-r--r-- 1 root root 873 Sep 28 10:56 contactengine.php
-rw-r--r-- 1 root root 1922 Sep 28 10:56 contactthanks.html
-rw-r--r-- 1 root root 184 Sep 28 10:56 contactthanks.php
drwxr-xr-x 2 root root 4096 Sep 28 10:56 css
drwxr-xr-x 3 root root 4096 Sep 28 10:56 fonts
drwxr-xr-x 2 root root 4096 Sep 28 10:56 images
-rw-r--r-- 1 root root 22233 Sep 28 10:56 index.html
drwxr-xr-x 2 root root 4096 Sep 28 10:56 js
-rw-r--r-- 1 root root 1877 Sep 28 10:56 readme.txt

7.2 重启容器

重启Nginx容器

[root@xiaoge888 html]# docker restart nginx
nginx

7.3 访问网站内容

在本地浏览器:http://服务器IP地址:8002,重新刷新页面后,可看到网站内容。

八、感受与总结

在基于华为云Flexus云服务器X实例搭建Nginx网站服务的实践过程中,我切实感受到了华为云的卓越之处。Flexus X实例的柔性算力表现出色,为搭建工作提供了强大而稳定的支撑,使得整个过程高效顺畅。其便捷的操作和出色的性能,让Nginx网站服务得以快速且可靠地部署。华为云以其专业的品质和优质的服务,为中小企业和开发者提供了极具价值的云计算解决方案,无疑是我们在数字化征程中的得力助手,让我们能够更加自信地在云端拓展业务,实现更多可能。

华为云 828:开启云端璀璨之旅

🎇在数字的浩瀚星空中,华为云如同一颗璀璨的明星,闪耀着创新与智慧的光芒。

💥华为云 828 活动盛大开启,这是一场科技与梦想的盛宴,是您迈向数字化未来的绝佳契机!

🌟我们为您精心准备了丰富多样的云计算产品和解决方案,无论是强大的云服务器,还是智能的数据分析服务,亦或是安全可靠的云存储,都将以卓越的性能和稳定性,助力您的业务腾飞。

🌈华为云凭借先进的技术和专业的团队,为您构建一个安全、高效、智能的云端世界。在这里,您可以轻松实现资源的灵活调配,快速应对市场的变化,让您的企业在激烈的竞争中脱颖而出。

🎉加入华为云 828 活动,您将享受到前所未有的优惠和福利,让您以更实惠的价格,体验到顶级的云计算服务。

📣不要犹豫,不要等待!抓住华为云 828 的机遇,与我们一起携手共进,共创美好未来!让华为云为您的梦想插上翅膀,在云端翱翔,书写属于您的辉煌篇章!

#华为云 #828活动 #云计算 #科技创新 #数字化转型

来源:互联网播客

相关推荐