小迪课堂

简介: 一个让程序员在线学习的视频网站

个人简介

本人是一名大二的软件工程专业的学生,经过二年对关于软件和网站开发相关技术的学习,终于在今天开发出了自己的第一个作品-小迪课堂,小迪课堂是一个供向我这样对开发充满热爱的同学们学习的视频网站,让热爱学习开发技术的同学不用在到处找资源,在本网站就能得到高质量的学习资源!


网站简介

相关技术

本网站是基于springboot的后端框架和vue作为前端框架开发的,前端用到的组件库是cube-ui,适配于手机端的ui组件库.

用到的相关技术:

后端

  • springboot+mybatis+spring+guava+mysql+jwt

前端

  • vue+cube-ui+vue-route+vue-cli脚手架等

开发模式

采用的是前后端分离的开发模式,用封装ajax的axios框架来发送http请求,后端提供数据接口服务供前端调用在页面进行展示,前后端基于JSON进行数据的传输.


部署方式

本项目是用docker容器技术来进行下部署的.


  1. 首先将后端项目配置好以后,用maven插件将后端springboot项目打包成jar包

image.png


  1. 然后通过xshell这个ssh连接工具连接阿里云服务器,填写云服务的公网ip和开放22端口即可连接上云服务器,如下图连接成功.

image.png

  1. 将打包好的jar文件上传到云服务器上,这里是采用xftp工具来进行文件上传的,然后下载java8的docker镜像:docker pull java:8,编写Dockerfile文件将java8和上传的jar文件制作为一个新镜像:
from java:8
MAINTAINER zhangpeihong
VOLUME /tmp
ADD docker-test-0.0.1-SNAPSHOT.jar zhang_docker.jar
RUN bash -c 'touch /zhang_docker.jar'
ENTRYPOINT ["java","-jar","/zhang_docker.jar"]
expose 6001
  1. 拉取mysql镜像和nginx镜像

在此之前将前端打包成dist目录上传到云服务器,并配置nginx.conf文件,将dist目录上传到nginx容器中,可以通过容器卷的技术来是实现.

同时运行mysql镜像,将项目需要的数据导入到mysql数据库中


  1. 编写docker-compose.yml文件

    上面的步骤都准备好以后,我们就可以编写docker-compose.yml,进行服务编排,让上面的镜像一键启动这些容器实例即可,最后我们就可以访问nginx服务器来访问我们的项目了,最重要的是我们一定要在阿里云服务器的安全组配置入站规则,一定要开放项目中所需要的端口.


  1. 上面的步骤经过之后让我们来看看项目部署上线的效果

QQ图片20221025165453.jpg

这是我通过手机访问网站得到的效果图,这样看的话,手机适配还是挺好看的!

感谢词

在这里非常感谢阿里云提供的云服务器,让我们在校大学生,能把自己开发的项目部署到公网中,这次的实践经历让我检验了自己docker部署项目的技术,也学习到了如何将自己开发的项目部署到了云端,这是一个很好的经历,让我对开发有了更加浓厚的兴趣,通过这个项目让自己对一个项目从开发-测试-部署这一套流程有很大的了解,了解市面上公司的基本开发流程.



相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
开发工具
frp-免费内网穿透
frp-免费内网穿透
1936 0
|
11月前
|
监控 安全 网络协议
永久免费SSL证书教程—自动续签
要实现免费SSL证书的自动续签,选择合适的证书颁发机构(CA)至关重要。推荐使用JoySSL,填写注册码230922可获得免费且支持自动续签的SSL证书。申请步骤包括注册账户、选择证书类型、提交申请、验证域名所有权及安装证书。配置自动续签需安装续签工具、生成密钥和CSR,并设置续签参数。定期检查证书状态、备份证书和密钥,确保续签顺利进行。注意CA机构的政策和服务条款变化,以保持证书的有效性。
|
11月前
|
前端开发 JavaScript Java
通过ChatGPT生成测试用例和测试脚本(2)
通过ChatGPT生成测试用例和测试脚本
327 21
|
存储 数据建模 索引
NumPy 1.26 中文官方指南(三)(1)
NumPy 1.26 中文官方指南(三)
242 1
|
安全 网络安全 网络架构
电脑提示“Waiting for Device”的解决方案
电脑提示“Waiting for Device”的解决方案
983 4
|
机器学习/深度学习 自然语言处理 算法
ICML 2024 Oral:DPO是否比PPO更适合LLM,清华吴翼团队最新揭秘
【8月更文挑战第13天】在自然语言处理领域,大型语言模型的对齐日益重要。直接偏好优化(DPO)作为无需奖励模型的新方法,虽在学术界受关注,但在实践中,如ChatGPT等应用仍青睐近端策略优化(PPO)。清华大学吴翼团队通过理论分析与实证研究发现DPO潜在局限性,并揭示PPO在LLM微调中取得优异性能的关键因素,如优势归一化、大批量大小及指数移动平均更新等。实验表明,PPO在多个任务中超越DPO,特别是在代码生成任务中取得领先成果。然而,这些发现需更多研究验证。论文详情见: https://arxiv.org/pdf/2404.10719
464 60
|
机器学习/深度学习 人工智能 分布式计算
蚁群、蜂群的智慧,大模型也可以有,谷歌等机构群体智能研究亮相
蚁群和蜂群以其独特的群体智能行为著称,如分布式决策、自组织性和鲁棒性。这些特性启发了科学家将群体智能原理应用于大模型的构建,以实现更高效、更智能的系统。谷歌等机构已通过模拟这些行为,开发出如“蚁群优化”算法等成果,显著提高了计算效率和系统的鲁棒性。然而,群体智能的应用仍面临通信协调、个体差异性和可解释性等挑战。
437 3
|
Kubernetes Cloud Native Devops
云原生架构:现代应用开发的未来之路
在当今快速发展的技术环境中,云原生架构正成为企业构建和部署现代应用的首选方式。本文探讨了云原生的基本概念、优势以及在实际应用中的关键组件和最佳实践,为企业如何利用云原生实现更高效、更灵活的应用开发提供了深入分析。
276 31
|
机器学习/深度学习 数据采集 数据挖掘
智能决策新引擎:Python+Scikit-learn,打造高效数据分析与机器学习解决方案!
【7月更文挑战第26天】在数据驱动时代,企业需从大数据中提取价值以精准决策。Python凭借丰富的库成为数据分析利器,而Scikit-learn作为核心工具备受青睐。本文通过电商案例展示如何预测潜在买家以实施精准营销。首先进行数据预处理,包括清洗、特征选择与转换;接着采用逻辑回归模型进行训练与预测;最后评估模型并优化。此方案显著提升了营销效率和企业决策能力,预示着智能决策系统的广阔前景。
317 2
|
Ubuntu 机器人 网络安全
ubuntu22.04 SSH和ROS2控制下位机
本文介绍了如何在Ubuntu 22.04系统中通过SSH远程控制机器人服务器,包括安装SSH服务、配置防火墙规则、修改`/etc/hosts`文件、使用密钥认证等步骤,并提供了使用ROS2控制下位机的方法和一些常用指令。
516 0