基于云服务器的环境搭建和项目部署学习

本文涉及的产品
云服务器 ECS,每月免费额度280元 3个月
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云服务器ECS,u1 2核4GB 1个月
简介: 本文章主要用于记录使用阿里云服务器进行环境搭建和项目部署期间的所思所学,水平有限,不吝赐教。

一、简介

本人大学期间主修计算机科学与技术专业,目前大四,处于毕设与找工作阶段,目前在使用云平台的服务器进行项目环境搭建和部署的学习。经过多方查阅和了解,最终通过网络搜索了解并最终决定使用阿里云平台的“飞天加速计划·高校学生在家实践”活动提供的服务器进行学习。


二、使用体验

1、环境搭建

项目主要使用Django框架,在本机上运行的环境为python3.8.0,因此首先需要对环境进行安装。由于预设的python已有3.6的环境,但核对下来发现项目使用的包有针对python3.8的特定需求,因而需要重新安装。

使用如下命令进行python3.8的包下载和解压:

wget http://npm.taobao.org/mirrors/python/3.8.3/Python-3.8.3.tar.xz

tar -xvJf Python-3.8.3.tar.xz

进入解压后的目录,执行如下命令进行配置和安装:

./configure --prefix=/usr/local/python3

make && make install

安装完毕后,对python3和pip3进行命令软链接和环境配置,便于后续命令的使用:

ln -s /usr/local/python3/bin/python3.8 /usr/bin/python3

ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

环境搭建完成后,使用命令进行项目的包安装,包可以预先在本地导出为txt文件上传到服务器,在执行如下命令安装:

pip3 install -r [txt_file_name]

2、数据库安装

项目使用Mysql数据库进行数据管理,使用如下命令进行安装:

wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
yum localinstall mysql57-community-release-el7-8.noarch.rpm
yum repolist enabled | grep "mysql.*-community.*"
yum module disable mysql
yum install mysql-community-server

安装成功后,重启Mysql服务,首次进入需要更改密码,并配置新的用户以提供给项目进行连接以及本机对服务器进行连接,需要注意,应当开启3306端口的白名单,以保证Mysql能正常被外部访问。


3、环境搭建

将项目导入服务器,这里使用ssh工具进行服务器的连接和文件传输。

导入项目后,进入项目目录即可执行如下命令进行项目启动验证,若发现缺包可根据需要动态安装:

python3 manege.py runserver [ip:port]

为了保证项目可以从外部访问,需要对端口执行白名单放权,保证端口的对外开放。

项目成功运行后,可以通过nohup进行无挂起运行,保证在退出终端后项目仍在正常运行,可以通过查看python进程以确认项目是否存活:

ps -ef | grep python


三、收获与总结

经过学习和使用,本人了解到了项目环境的重要性,由于本项目使用的是Django框架,因而python环境与项目启动与管理工具显得尤为重要,

目前本人身处上海,而疫情尚未停歇,感谢阿里云平台提供的活动,能让我在家中便捷地使用云服务器进行学习,不仅让我了解了许多服务器部署与搭建的相关知识,让我能在居家隔离期间有足够的资源进行学习;也让我对毕业设计有了一定的经验积累和收获,让我能在之后真正部署自己的项目时有经验可循。

在未来、等到疫情结束、正式开工后,我也会不断学习、不断进取,让学习的道路不断延伸、让知识的河流积聚成渊。

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4月前
|
Ubuntu Linux 定位技术
Trinitycore学习之在Linux环境上搭建服务器并测试运行
Trinitycore学习之在Linux环境上搭建服务器并测试运行
67 0
|
4月前
|
网络协议 Linux
音视频学习之rtsp推拉流学习2(流媒体服务器ZLMediaKit)
音视频学习之rtsp推拉流学习2(流媒体服务器ZLMediaKit)
186 0
|
4月前
|
应用服务中间件
【JavaWeb学习】—停止Tomcat服务器的几种方式(九)
【JavaWeb学习】—停止Tomcat服务器的几种方式(九)
|
3月前
|
网络协议
网络编程【TCP单向通信、TCP双向通信、一对多应用、一对多聊天服务器】(二)-全面详解(学习总结---从入门到深化)(下)
网络编程【TCP单向通信、TCP双向通信、一对多应用、一对多聊天服务器】(二)-全面详解(学习总结---从入门到深化)
35 2
|
3月前
|
监控 Linux Shell
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 下)
在线上排查问题时,查询日志、查看系统配置和分析操作系统信息是至关重要的。这些操作可以帮助我们深入了解软件和服务的兼容性,并解决潜在的问题。在本次学习中,我们将介绍并深入学习一些我在处理类似问题时常用的指令。通过掌握这些指令,你将能够更加高效地定位和解决线上问题,提高系统的稳定性和性能。让我们一同进入这个学习过程吧!
43 0
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 下)
|
11天前
|
关系型数据库 MySQL 数据库连接
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
33 11
|
4月前
|
应用服务中间件
【JavaWeb学习】—IDEA整合Tomcat服务器(十二)
【JavaWeb学习】—IDEA整合Tomcat服务器(十二)
|
1月前
|
Linux Docker Python
如何将本地的python项目部署到linux服务器中
如何将本地的python项目部署到linux服务器中
89 1
|
1月前
|
网络协议 Ubuntu Linux
如何在Linux环境搭建本地SVN服务器并结合cpolar实现公网访问
如何在Linux环境搭建本地SVN服务器并结合cpolar实现公网访问
|
1月前
|
前端开发 NoSQL 关系型数据库
服务器项目部署总结(超详细)
服务器项目部署总结(超详细)