云服务器初探

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 云服务器零基础入门,学习探索网站上线的具体流程

疫情被困,闲心大发决定给项目上线

本人就读于物联网工程,平时有过较多项目开发经验,在单片机、Arduino和阿里云等平台上都有过项目,最近做了一个小项目,前后端分类架构。突发奇想给项目部署到网上,由于我之前有过阿里云开发经历,故直接到官网看看有没有合适的服务器,在首页看到了飞天计划,学生居然可以白嫖,果断下单买了一个,体验了一下。以下为我给项目部署上线的详细过程:

网站上线云服务器

配置安全组

打开创建的实例,进入安全组的配置规则进行配置。在入方向中点击快速添加:选择数据库:mysql(3306)和前端:http(80)端口

image.png

之后在手动添加后台端口,比如9090image.png


使用xshell连接服务器,xftp进行文件传输

  1. 官网下载免费版本xshell\xftp或者使用阿里云的cloud shell
  2. 在实例界面,点击更多/密码、密钥/重置实例密码,之后重启实例
  3. 在xshell中新建会话,主机设为公网ip,点击用户身份验证,用户名输入root,密码为刚才设置得密码,最后点击连接
  4. 一些xshell命令:free -h:内存 df -h存储空间 top:运行的软件

Linux配置java环境

  1. 下载linux版本的jdk
  2. 在xshell中新建文件传输,将下载的jdk放入usr/local/
  3. 解压: tar -zxvf jdk-8u291-linux-x64.tar.gz
  4. 移动:将解压后的文件存于/usr/local/jdk1.8中
  5. 修改配置文件:vim /etc/profile   i:插入(编辑),ESC退出,:wq保存
  6. 在文件最后添加配置:
  7. export JAVA_HOME=/usr/local/jdk1.8
  8. export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
  9. export PATH=$PATH:$JAVA_HOME/bin              
  10. 刷新配置:source /etc/profile        
  11. java -version查看是否配置成功    

Linux安装Docker

  1. 本实例的操作系统为CentOs7.8,其他操作系统操作可能不同
  2. 使用官方安装脚本自动安装,:curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
  3. 验证是否安装成功:docker version
  4. 设置开机自启: systemctl enable docker          
  5. 阿里云设置镜像加速:产品与服务中搜索容器镜像服务,镜像工具/镜像加速器,选择对应的操作系统,配置镜像加速器
  6. docker常用命令:列举镜像docker image,下载镜像:docker pull xxx,查看容器ID:docker ps,进入容器:docker attach id,停止容器:docker stop id

Docker安装Mysql

  1. docker pull mysql:8.0.28
  2. 启动MySql:docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0.28
  3. docker ps -a获取容器ID,进入容器:docker exec -it id /bin/bash
  4. 登录MySql:mysql -uroot -p (u后接用户名,p后接密码,默认都为root)                                              

Linux安装Nginx

  1. 安装依赖和相关库:[root@localhost ~]# yum -y install gcc-c++ zlib-devel openssl-devel libtool
  2. 下载nginx并解压:wget http://nginx.org/download/nginx-1.14.0.tar.gz
  3. tar -zxvf nginx-1.14.0.tar.gz
  4. 配置:cd nginx-1.14.0      ./configure --prefix=/usr/local/nginx
  5. 安装:make && make install
  6. 启动:cd ../nginx/sbin  ./nginx
  7. 查看nginx:ps -ef | grep nginx

前端部署到服务器

  1. npm run build打包生成dist文件夹
  2. 在nginx/conf中有一个nginx.cong文件,使用vim编辑
  3. 将其中的location替换成location / {root /home/server/dist; index index.html index.htm; try_files $uri $uri/ /index.html; }。dist路径需要修改

后端部署到服务器

  1. 将后端的数据库配置文件中的数据源url设置为实例的内网ip,修改用户名和密码
  2. 忽略测试文件打包后端项目mvn clean package -DskipTests
  3. 在xshell输入java -jar 文件名 运行后端
  4. 设置后台启动:nohup java -jar xxx.jar &
  5. 查看进程:ps -ef | grep java

回顾与展望

看到项目通过IP地址访问成功的一刻十分激动,我好像迈出了一大步。从对网站一窍不通到现在独立上线了一个网站,遇到了许多bug,甚至一度想过放弃,但是坚持与冷静帮助了我走出困境,一个个问题得到解决,对网站和服务器的认知一步步加深,离程序员又进步了一点点,但是学无止境,尤其对于IT而言,未来要学习更多新框架和技术!

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
安全 物联网 测试技术
物联网平台的优势与价值
物联网平台的优势与价值
1020 49
物联网平台的优势与价值
|
5月前
|
机器学习/深度学习 存储 计算机视觉
基于YOLOv8深度学习的遥感地理空间物体检测系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标检测(2)
基于YOLOv8深度学习的遥感地理空间物体检测系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标检测
|
搜索推荐 云计算
记第一次使用云服务器
我是一个学生党,在读大学计算机科学与技术专业,在学习的过程中会接触到很多关于云计算的课程。因为资金有限,也不想会钱买个服务器来练习,阿里云有很多的云实验可以做——有时间限制,后来我也是进行学生认证然后免费申领了这个服务器,因为这个服务器的使用时间是两个周所以对于我来说是应该算是一个很大的福利把,因为进行实验以后不需要每天重复之前的实验。当然如果有能力的话阿里的学生特惠还是很不错的。
记第一次使用云服务器
|
弹性计算 NoSQL 关系型数据库
初识云服务器
作为未来的开发者,很有必要搞一个自己的云服务器,模拟生产环境
初识云服务器
|
6月前
|
存储 Java
Java中利用BitMap位图实现海量级数据去重
Java中利用BitMap位图实现海量级数据去重
|
弹性计算
云服务器使用
首次使用云服务器
|
前端开发 JavaScript Java
云服务器的使用
放假在家期间,后端自学了SSM框架和SpringBoot框架,前端整合Vue框架,并且整合了前端后端。但是发布一个属于自己的网站是需要云服务器的。而阿里云的“飞天加速计划·高校学生在家实践”活动可以使学生体验云服务器。
云服务器的使用
|
Java 关系型数据库 MySQL
第一次云服务器使用
我是一名在读大四的学生,专业为电子信息工程。由于毕设是图书管理系统,为了让 Web 应用能更方便的访问,就选择使用阿里云作为服务器。
|
弹性计算 关系型数据库 MySQL
玩转云服务器
玩转云服务器
115 0
|
监控 物联网 数据处理