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

news2025/1/11 14:14:09

在这里插入图片描述

🤵‍♂️ 个人主页: @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-free
    
    deb http://mirrors.aliyun.com/debian-security buster/updates main
    deb-src http://mirrors.aliyun.com/debian-security buster/updates main
    
    deb http://mirrors.aliyun.com/debian/ buster-updates main contrib non-free
    deb-src http://mirrors.aliyun.com/debian/ buster-updates main contrib non-free
    
    deb 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:8
    volumes:
      - "./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: always
    environment:
      - MYSQL_PORT=3306
      - MYSQL_ROOT_PASSWORD=123456  # 一定要配置
      - MYSQL_DATABASE=django_recruitment
    networks:
      - 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.coloradmin.cn/o/1030523.html

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

相关文章

WebGL 选中一个表面

目录 选中一个表面 示例程序(PickFace.js) 代码详解 示例效果 选中一个表面 ​​​​​​​WebGL 选中物体_山楂树の的博客-CSDN博客可以使用同样的方法来选中物体的某一个表面。这一节在PickObject程序的基础上编写了PickFace程序,后…

计算机毕业设计 基于SSM+Vue的物资存储系统(以消防物资为例)的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

docker安装使用xdebug

docker安装使用xdebug 1、需要先安装PHP xdebug扩展 1.1 到https://pecl.php.net/package/xdebug下载tgz文件,下载当前最新稳定版本的文件。然后把这个tgz文件放到php/extensions目录下,记得install.sh中要替换解压的文件名: installExtensio…

uniapp 离线打包 plus.runtime.install 安装页面不弹起

uniapp 离线打包 plus.runtime.install 安装页面不弹起 updateVersion(webview : any, eventTitle : string, eventContent : string) {const loading plus.nativeUI.showWaiting(准备下载);var dtask plus.downloader.createDownload(eventContent,{method: GET,timeout: 5…

银行存款问题:整存零取

整存零取月息为0.63%,每年底取出1000,五年刚好取完,计算最初存入金额。 (本笔记适合基本熟悉一门编程语言的 coder 翻阅) 【学习的细节是欢悦的历程】 Python 官网:https://www.python.org/ Free:大咖免费“圣经”教程…

Ae 效果:CC Wide Time

时间/CC Wide Time Time/CC Wide Time CC Wide Time (CC 宽泛时间)能够将前后不同时间的帧叠加在一起,从而创建移动物体的运动轨迹,实现重影、运动模糊、光影跟随等效果。 可以配合其它的效果使得本效果有更多的可控性。 比如&…

py实验一

2、九九乘法表。 编写程序,输出九九乘法表。 源代码: for a in range(1, 10): for b in range(1, a1): print(f"{a}*{b}{a * b}", end" ") print() 列出测试数据和实验结果截图: 3、编写程序&#xff0…

progeny PROGENy

单细胞之富集分析-6:PROGENy - 简书 (jianshu.com) #request 2 .libPaths(c( "/home/data/t040413/R/x86_64-pc-linux-gnu-library/4.2","/home/data/t040413/R/yll/usr/local/lib/R/site-library", "/home/data/refdir/Rlib/", &qu…

tdesign的文件上传(微信小程序+idea的springboot)

目录 1. springboot后端 1.1 FileController.java 1.2 listener文件的ErpApplicationListener.java 1.3 【重点!】FileServiceImpl层 1.4 IFileService 1.5 StringUtil通用类 1.6 主程序加一个监听器 1.7 application.yml文件 2. 微信小程序端 2.1 TDesign的…

数据结构与算法——13.队列的拓展

这篇文章主要讲一下双端队列,优先队列,阻塞队列等队列的拓展内容。 目录 1.队列拓展概述 2.双端队列的链表实现 3.双端队列的数组实现 4.优先队列无序数组实现 5.阻塞队列 6.总结 1.队列拓展概述 首先来看一张图,来大致了解一下他们的…

TorchLens--可视化任何PyTorch模型

0. 简介 PyTorch是一个深度学习框架,它使用张量(tensor)作为核心数据结构。在可视化PyTorch模型时,了解每个张量运算的意义非常重要。张量运算作为神经网络模型中的基本操作。它们用于处理输入数据、执行权重更新和生成预测结果。…

Python:获取当前目录下所有文件夹名称及文件夹下所有文件名称

获取当前目录下所有文件夹名称 def get_group_list(folder_path):group_list []for root, dirs, files in os.walk(folder_path):for dir in dirs:group_list.append(dir)return group_list获取文件夹下所有文件名称 def get_file_list(folder_path, group_name):file_list …

【zookeeper】基于Linux环境安装zookeeper集群

前提,需要有几台linux机器,我们可以准备好诸如finalshell来连接linux并且上传文件; 其次Linux需要安装上ssh,并且在/etc/hosts文件中写好其他几台机器的名字和Ip 127.0.0.1 localhost localhost.localdomain localhost4 localh…

canal简单介绍

简介 https://github.com/alibaba/canal 基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费 原理是使用程序模拟一个mysql的从库,使主库发送同步日志给程序,程序再对数据进行处理,比如同步到其他数据库。 使用 下图是一个…

【计算机网络】图解路由器(一)

图解路由器(一) 1、什么是路由器?2、什么是路由选择?3、什么是转发?4、路由器设备有哪些类型?5、根据性能分类,路由器有哪些类型?5.1 高端路由器5.2 中端路由器5.3 低端路由器 6、什…

Dubbo面试题(三)

文章目录 前言一、Dubbo 的注册中心集群挂掉,发布者和订阅者之间还能通信么?二、Dubbo和Spring的关系三、Dubbo 使用的是什么通信框架?四、Dubbo 集群提供了哪些负载均衡策略?五、Dubbo 的集群容错方案有哪些?六、Dubbo 的默认集…

33.CSS发光按钮的悬停效果

特效 源码 indexhtml <!DOCTYPE html> <html> <head><title>CSS Modern Button</title><link rel="stylesheet" type="text/css" href="style.css"> </head> <body><a href="#"…

【数据结构练习】链表面试题集锦二

目录 前言&#xff1a; 1.链表分割 2.相交链表 3.环形链表 4.环形链表 II 前言&#xff1a; 数据结构想要学的好&#xff0c;刷题少不了&#xff0c;我们不仅要多刷题&#xff0c;还要刷好题&#xff01;为此我开启了一个必做好题锦集的系列&#xff0c;每篇大约5题左右。此…

大数据Flink(八十五):Window TVF 支持多维数据分析

文章目录 Window TVF 支持多维数据分析 一、Grouping Sets 二、​​​​​​​Rollup

学习记忆——宫殿篇——记忆宫殿——记忆桩——风景

河边街道窗框空间房顶楼房水塔山顶塔桥舟桥楼观景台 车顶架碧水池&#xff08;喷泉&#xff09;塔腰楼顶房檐碑石狮箱车叉牌摩托灯