【华为云云耀云服务器L实例评测】- 云原生实践,快捷部署人才招聘平台容器化技术方案!

在这里插入图片描述

🤵‍♂️ 个人主页: @AI_magician
📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。
👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!🐱‍🏍
🙋‍♂️声明:本人目前大学就读于大二,研究兴趣方向人工智能&硬件(虽然硬件还没开始玩,但一直很感兴趣!希望大佬带带)

在这里插入图片描述

摘要:
在这里插入图片描述
感谢华为云提供的测评优惠卷,遥遥领先!!✨
华为云的云耀云服务器L实例备受推崇,以其高效、可靠和安全的基础设施服务而闻名。本文将为展示在该服务器上部署轻量化定制表单服务为例带你一文走进该服务器的方方面面。

上一篇文章我们讲述了 【华为云云耀云服务器L实例评测|云原生】自定制轻量化表单Docker快速部署云耀云服务器 一款基于pywebio 快速开发的表单,实现设置每个校区每个时间段只能被预约一次。(可以选择各种后端框架或者是内置服务器)

在这里插入图片描述
在这里插入图片描述

本次我们部署成熟应用,基于Django. docker. docker-compose 实现 !!

Github开源地址✨✨: recruitment-platform
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

还有通知钉钉机器人!!
在这里插入图片描述
Github开源地址✨✨: recruitment-platform


部署教程 ✨✨

快速上手云耀云服务器 首先进入到服务器后,我们需要安装docker环境。(哈哈哈ssh进来后还有打招呼)

在这里插入图片描述

Ubuntu20.04 安装教程在Docker官方文档
Document about docker install for ubuntu 这里就不赘述啦
在这里插入图片描述
在这里插入图片描述

为了测试安装成功,我们运行docker界的Heeloworld!!

在这里插入图片描述
再安装 docker-compose

apt install docker-compose 

在这里插入图片描述

拉取github项目命令(该服务器自带Git的哦✨)

git pull git@github.com:TobeMagic/recruitment-platform.git

安装后,我们运行docker 命令创建(要在Dockerfile文件目录下运行!!不然要指定路径哦),后面大家有需要我可以打包成镜像上传到Hub大家就可以直接在docker Hub拉取啦!!

要将APT的镜像源设置为国内的镜像源,您可以编辑/etc/apt/sources.list文件,并将其替换为适合您所在地区的镜像源。以下是一个示例,将Debian的镜像源更改为国内的镜像源(阿里云):

  1. 使用root权限或sudo权限打开/etc/apt/sources.list文件:

    sudo nano /etc/apt/sources.list
    ```
  2. 在编辑器中,将文件中的内容替换为以下内容:

    # 默认的镜像源注释掉,添加阿里云的镜像源
    deb http://mirrors.aliyun.com/debian/ buster main contrib non-free
    deb-src http://mirrors.aliyun.com/debian/ buster main contrib non-freedeb http://mirrors.aliyun.com/debian-security buster/updates main
    deb-src http://mirrors.aliyun.com/debian-security buster/updates maindeb http://mirrors.aliyun.com/debian/ buster-updates main contrib non-free
    deb-src http://mirrors.aliyun.com/debian/ buster-updates main contrib non-freedeb http://mirrors.aliyun.com/debian/ buster-backports main contrib non-free
    deb-src http://mirrors.aliyun.com/debian/ buster-backports main contrib non-free
    ```注意,上述示例是针对Debian 10(代码名称为Buster)的,如果您使用其他版本的Debian或不同的Linux发行版,请相应地修改镜像源地址。
  3. 保存并关闭文件。在Nano编辑器中,按下Ctrl + X,然后按下Y确认保存,最后按下Enter退出编辑器。

  4. 更新APT缓存以使更改生效:

    sudo apt update
    ```

现在,APT的镜像源已经被修改为国内的镜像源。您可以使用apt updateapt upgrade等命令来管理软件包并从国内镜像源进行软件包的下载和更新。

docker-compose up --build

在这里插入图片描述

这次和部署轻量化表单一样,再次迎来一点小插曲 🤦‍♂️

django 启动 docker-compose app_1 | django.db.utils.OperationalError: (2003, “Can’t connect to MySQL server on ‘db’ ([Errno 111] Connection refused)”)

在这里插入图片描述
这里显示了数据库无法连接,去查看了一下settings.py文件和docker-compose.yml文件,数据库端口和名称都是正确的,但是一直无法访问。具体可以看看下面的内容。
docker-compose.yml

  # 设置数据库 容器db:image: mysql:8volumes:- "./mysql/data:/var/lib/mysql"  # 设置timestamp 可为 null   #  设置字符集 (不是utf8会报错 #   collation 这是排序规则#      - "./mysql/conf/my.cnf:/etc/mysql/my.cnf"command: "mysqld --user=root --explicit_defaults_for_timestamp --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci"#      - -character-set-server=utf8mb4  # 设置默认字节#      - -collation-server=utf8mb4_general_ci #   设置排序#      - -explicit_defaults_for_timestamp=true # 设置可为 null#      --default-authentication-plugin=mysql_native_password # 使用 5.7 版本的密码验证ports:- "3306:3306"restart: alwaysenvironment:- MYSQL_PORT=3306- MYSQL_ROOT_PASSWORD=123456  # 一定要配置- MYSQL_DATABASE=django_recruitmentnetworks:- db_network

settings文件

DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'django_recruitment','PASSWORD': '123456','PORT': '3306','USER': 'root','HOST': 'db',# 'HOST': '127.0.0.1','OPTIONS': {'charset': 'utf8mb4'},},

考虑到应该是因为mysql要先等待3306端口服务或进程启动并监听,才启动服务,往前找db容器的报错
在这里插入图片描述
可以发现,这里的错误和之前发的文章所遇见的是一摸一样的!!【云原生 | Docker】腾讯云部署Django项目 (服务器选型、git配置、docker三分钟部署) 这个是docker-compose启动中mysql的数据挂载过去时lower_case_table_names设置与数据字典的设置不一致,有两种解决方法,不需要持久化,先把该命令行注释重新构建,第二则是设置添加lower_case_table_names设置即可

my.cnf 文件挂载到 MySQL 容器中的 /etc/mysql/my.cnf 路径。

my.cnf 文件中,添加以下内容:

[mysqld]
lower_case_table_names=2

请确保将示例中的 your_password 替换为您自己设置的 MySQL root 密码。通过这样的配置,MySQL 容器将使用自定义的配置文件,并将 lower_case_table_names 设置为 2。不过到最后还是不行,因为数据恢复中缺少重要日志,需要强力恢复,但试了几个强度都不行,只能将原来mysql文件删除了,并配置好对应的,my.cnf 以便于部署新环境对应配置数据恢复, 以及 错误配置 bash-4.4# mysql mysql: [ERROR] unknown variable 'default-storage-engine=INNODB'

default-storage-engine变量在较新的MySQL版本中不再需要显式设置,因为默认的存储引擎已经是InnoDB。+

至此终于,终于成功了!!✨✨ 访问链接

在这里插入图片描述

接着我们进入到服务器看业务是否流程正常
在这里插入图片描述
接下来我们创建管理员,进入到后台管理页面

在这里插入图片描述

最后总结了一下,感觉在配置上还是要有改进的,也是感谢这次华为云云耀云服务器L实例评测

  1. dockerfile.ymal部署 可以规则化命名container_name 方便管理
  2. mysql.conf 和mysql版本一定要管理良好
  3. 及时做好备份
  4. 虽然django热插拔app,在部署需要了解每个app用途!不同方向的app应该分出来不同project。

Github开源地址✨✨: recruitment-platform

有问题欢迎大家提出issues! 如果喜欢请点点一个小小的star!! 点赞,关注收藏! 🤞

在这里插入图片描述

						  🤞到这里,如果还有什么疑问🤞🎩欢迎私信博主问题哦,博主会尽自己能力为你解答疑惑的!🎩🥳如果对你有帮助,你的赞是对博主最大的支持!!🥳

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/89900.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构与算法(C语言版)P8---树、二叉树、森林

【本节目标】 树概念及结构。二叉树概念及结构。二叉树常见OJ题练习。 1、树概念及结构 1.1、树的概念 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一颗倒挂的树&#xf…

泽众APM性能监控软件

泽众Application Performance Management(简称APM)是一款专业的性能监控工具,可以对全链路如Web服务器、应用服务器、数据库服务器等进行实时监控,并以图表化的形式直观地呈现监控数据,为系统性能优化和定位问题提供准…

Caddy Web服务器深度解析与对比:Caddy vs. Nginx vs. Apache

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

基于SpringBoot的大学生就业招聘系统的设计与实现

目录 前言 一、技术栈 二、系统功能介绍 求职信息管理 首页 招聘信息管理 岗位申请管理 岗位分类 企业管理 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息互联网信息的飞速发展,大学生就业成为一个难题,好多公司都舍不…

最新AI写作系统ChatGPT源码/支持GPT4.0+GPT联网提问/支持ai绘画Midjourney+Prompt应用+MJ以图生图+思维导图生成

一、智能创作系统 SparkAi创作系统是基于国外很火的ChatGPT进行开发的Ai智能问答系统。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作ChatGPT?小编这里写一个详细图文教程吧&…

使用光纤激光切割机等激光切割设备时的一些小诀窍

光纤激光切割机极大地提高了钣金加工行业切割效果和生产效率。然而在我们对客户的回访调查中,发现客户普遍存在着对光纤激光切割机设备的保养维护意识不足的问题,这严重影响了设备的正常使用和使用寿命。 虽然激光切割机有日常的保养,但是也需…

jvm垃圾收集算法

简介 由于《分代收集理论》和不同垃圾收集算法,Java堆应该被划分为不同区域,一般至少会把Java堆划分为新生代(Young Generation)和老年代(Old Generation)两个区域。 垃圾收集器可以只回收其中某一个或者…

力扣每日一题(+日常水几道题)

每日一题1333. 餐厅过滤器 - 力扣&#xff08;LeetCode&#xff09; 简单的按规则排序,去除几个不满足的条件然后排序返回即可 #include<algorithm> class Solution { public:vector<int> filterRestaurants(vector<vector<int>>& restaurants, …

侯捷 C++ STL标准库和泛型编程 —— 1 STL概述 + 2 OOPvsGP

现在开始更新侯捷的STL的部分了&#xff01;&#xff01;&#xff01; 完整版本会在全部更新完之后就整合发出 或者也可以直接去我的个人网站上查看 关于STL这部分&#xff0c;原课程将其分为了四部分&#xff0c;我做笔记时&#xff0c;会将其整合&#xff0c;使其更具有整体性…

OpenGLES:绘制一个颜色渐变的圆

一.概述 今天使用OpenGLES实现一个圆心是玫红色&#xff0c;向圆周渐变成蓝色的圆。 本篇博文的内容也是后续绘制3D图形的基础。 实现过程中&#xff0c;需要重点关注的点是&#xff1a;如何使用数学公式求得图形的顶点&#xff0c;以及加载颜色值。 废话不多说&#xff0c…

【ROS 2】-2 话题通信

所有内容请看&#xff1a; 博客学习目录_Howe_xixi的博客-CSDN博客https://blog.csdn.net/weixin_44362628/article/details/126020573?spm1001.2014.3001.5502飞书原文链接&#xff1a; Docs

LeetCode算法题---第3天

注:大佬解答来自LeetCode官方题解 121.买卖股票的最佳时期 1.题目 2.个人解答 function maxProfit(prices) {//更新最低价格和最大利润let minPrice prices[0];let maxProfit 0;for (let i 1; i < prices.length; i) {// 如果当前价格比最低价格还低&#xff0c;更新最…

情满中秋᛫欢度国庆 | 联诚发与你共度佳节!

转眼九月份又走到尽头 国庆和中秋正好撞了个满怀 随风飘扬的国旗与满街飘香的月饼 国泰民安与阖家团圆 这是大家与小家最美好的祈愿 当中秋遇上国庆&#xff0c;当团圆遇上国诞 双节来临之际 为庆祝传统佳节与祖国生日 也为感谢联诚发每位员工的辛勤付出 9月28日下午 …

如何礼貌委婉地拒绝上级领导的加班要求?

案例&#xff1a;领导发消息问我今天晚上能否加班完成一项工作&#xff0c;但我已经和一个重要的朋友约好了今晚一起吃饭&#xff0c;我该如何礼貌委婉地拒绝上级领导的加班要求&#xff0c;并且不让上级领导对我产生不好的印象呢? 回复&#xff1a;当面临类似情况时&#xf…

从零开始之了解电机及其控制(11)实现空间矢量调制

广泛地说&#xff0c;空间矢量调制只是将电压矢量以及磁场矢量在空间中调制到任意角度&#xff0c;通常同时最大限度地利用整个电压范围。 其他空间矢量调制模式确实存在&#xff0c;并且根据您最关心的内容&#xff0c;它们可能值得研究。 如何实际执行这种所谓的交替反向序列…

通过http发送post请求的三种Content-Type分析

通过okhttp向服务端发起post网络请求&#xff0c;可以通过Content-Type设置发送请求数据的格式。 常用到的三种&#xff1a; 1&#xff09;application/x-www-form-urlencoded; charsetutf-8 2&#xff09;application/json; charsetutf-8 3&#xff09;multipart/form-dat…

HTML5中使用video标签

参考链接 <videocontrolscontrolslist"nodownload noplaybackrate"disablePictureInPicture"true"disableRemotePlayback"true"src"https://www.runoob.com/try/demo_source/movie.mp4"></video>隐藏下载&#xff1a;nod…

ios证书类型及其作用说明

ios证书类型及其作用说明 很多刚开始接触iOS证书的开发者可能不是很了解iOS证书的类型功能和概念。下面对iOS证书的几个方面进行介绍。 apple开发账号分类&#xff1a; 免费账号&#xff1a; 无需支付费用给apple&#xff0c;使用个人信息注册的账号 可以开发测试安装&…

No133.精选前端面试题,享受每天的挑战和学习

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

AUTOSAR RTE介绍(更新版230925)

RTE是什么 AUTOSAR RTE(Run Time Environment)实现了AUTOSAR系统中的虚拟功能总线(VFB),提供了SWC(Software Component)之间的访问接口和SWC对于BSW资源的访问接口。RTE为SWC中的Runnable提供与其他SWC或者BSW模块通信的接口,RTE将Runnable映射到OS Task中,并且管理Runna…