华为云云耀云服务器L实例评测|企业项目最佳实践之docker部署及应用(七)
华为云云耀云服务器L实例评测|企业项目最佳实践系列:
华为云云耀云服务器L实例评测|企业项目最佳实践之云服务器介绍(一)
华为云云耀云服务器L实例评测|企业项目最佳实践之华为云介绍(二)
华为云云耀云服务器L实例评测|企业项目最佳实践之华为云耀云服务器L实例介绍(三)
华为云云耀云服务器L实例评测|企业项目最佳实践之云耀云服务器L实例购买 (四)
华为云云耀云服务器L实例评测|企业项目最佳实践之评测用例(五)
华为云云耀云服务器L实例评测|企业项目最佳实践之包管理工具安装软件(六)
华为云云耀云服务器L实例评测|企业项目最佳实践之docker部署及应用(七)
华为云云耀云服务器L实例评测|企业项目最佳实践之私有库搭建verdaccio(八)
华为云云耀云服务器L实例评测|企业项目最佳实践之启动宠物预约项目(九)
华为云云耀云服务器L实例评测|企业项目最佳实践之计划任务与Queue队列实践 (十)
华为云云耀云服务器L实例评测|企业项目最佳实践之压测 (十一)
华为云云耀云服务器L实例评测|企业项目最佳实践之建议与总结(十二)
八、华为云耀云服务器L实例docker、docker-compose安装及部署MySQL、Redis应用:
随着云原生、容器化、微服务、K8S等技术的发展,容器 docker 也逐渐在企业团队实践中大量的使用。它可以提供了一套标准化的解决方案,极大地提升了部署、发布、运维的效率。
如下为目前公司某个业务线集群使用的K8S云服务器集群:
K8S相关部署文件:
1. 什么是容器:
容器是操作系统内核自带能力,是基于 Linux内核实现的轻量级高性能資源隔离机制Docker是容器技术之一,核心在于实现应用与运行环境整体打包以及打包格式统,Docker通过 Linux Container技术的包装将App变成种标准化的、可移植的、自管理的组件。
容器关键价值: |
---|
①. 快速交付和部署:一站式部署/运维容器应用,一键式滚动升级。 |
②. 提升资源利用率:更细粒度地划分资源,提高资源利用率。 |
③. 保障业务高可用:秒级弹性扩容,快速响应并发高峰。 |
④. 复杂系统管理简单:单一重型应用解耦拆分为多个轻量模块,每个模块升级伸缩更加灵活,轻松应对市场变化。 |
2. Docker的典型应用场景:
3. 安装docker:
查看docker是没有默认安装的,我们这里直接采用官方给出的命令来进行docker的安装,可以看到采用的也是华为云的网络地址,安装的速度非常的快。
# 安装docker程序
sudo apt-get install -y docker.io
docker安装完后,可以查看docker版本以及使用docker简单的命令运行是否正常。
# 查看docker的版本
docker -v
# 查看当前docker运行的容器
docker ps
# 查看当前docker下载的镜像image
docker images
4. docker搭建MySQL 5.7容器:
# 拉取mysql镜像
docker pull mysql:5.7
# 启动一个mysql容器
docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci
# 查看正在运行的容器
docker ps
# 查看所有的镜像
docker images
5. docker搭建Redis容器:
# 拉取redis镜像
docker pull redis
# 启动一个redis容器
docker run --name redis-server -p 6379:6379 -d redis
# 查看正在运行的容器
docker ps
# 查看所有的镜像
docker images
# 进入redis容器
docker exec -it 容器id /bin/bash
6. 安装docker-compose:
docker-compose是一个用来定义个运行复杂应用的docker工具,使用该工具可以轻松、高效的管理容器,通过一个配置文件可以管理多个docker容器。
使用 docker Compose 可以轻松、高效的管理容器,在配置文件中,所有的容器通过services来定义,然后使用docker-compose脚本来启动,停止和重启应用,和应用中的服务以及所有依赖服务的容器,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务,非常适合组合使用多个容器进行开发的场景。
拉取github对应的程序,很多时候,网络超时,如果您没有网络的问题,可以尝试以下方案安装:
sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
找到其它的方案,使用 pip来安装docker-compose。
# pip安装docker-compose
sudo pip install docker-compose
# 查看版本
docker-compose -v
7. docker-compose搭建MySQL、Redis容器:
.env文件:
MYSQL_DATABASE=huawei
MYSQL_USER=root
MYSQL_PASSWORD=123456
MYSQL_ROOT_PASSWORD=root
MYSQL_DIR=./mysql
MYSQL_PORT=3306
MYSQL_VERSION=5.7
docker-compose.yml文件:
version: '3'networks:node-network:driver: bridgeservices:### Reids Container #######################################redis:image: rediscontainer_name: redis-dockerports:- 6379:6379environment:TZ: Asia/Shanghainetworks:- node-network### mysql Container ###########################mysql:restart: alwaysbuild:context: ./mysqlargs:- MYSQL_VERSION=${MYSQL_VERSION}# 指定容器的名称container_name: mysql-docker# 使container内的root拥有真正的root权限,否则,container内的root只是外部的一个普通用户权限# 有可能数据卷可能挂载不了,启动不起privileged: truecommand: --innodb-use-native-aio=0environment:MYSQL_DATABASE: ${MYSQL_DATABASE} # 指定一个数据库,在容器启动时创建.# 创建一个新用户,这个用户在MYSQL_DATABASE指定的数据库上拥有超级用户权限MYSQL_USER: ${MYSQL_USER}MYSQL_PASSWORD: ${MYSQL_PASSWORD}MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}volumes:- "${MYSQL_DIR}/data:/var/lib/mysql" # 挂载数据目录- "${MYSQL_DIR}/logs:/var/lib/mysql-logs" # 挂载日志目录ports:# 将容器的3306映射到本地3306,前面是本地端口- "${MYSQL_PORT}:3306"
销毁容器:
# 启动MySQL和Redis容器
docker-compose up -d redis mysql
# 查看容器
docker ps
# 销毁容器
docker down
8. 使用“Navicat Premium”连接MySQL服务器,有两种方案进行连接:
序号 | 连接方案 |
---|---|
1 | 使用本地先通过SSH的方式连接到华为云耀云服务器L实例服务器,再连接本地localhost的方式连接MySQL服务器。 |
2 | 开放服务器外网3306端口,直接使用华为云耀云服务器L实例服务器的IP + port进行连接。 |
在华为云耀云服务器L实例中的安全组,如下添加规则,开通3306的外网限制规则,在外网即可访问华为云耀云服务器L实例的内部端口。
9. 使用连接Redis服务器:
Redis Desktop Manager(RDM)是一款用于管理和操作Redis数据库的图形化界面工具。它提供了简单易用的界面,使用户能够方便地执行各种Redis数据库操作,并且支持多个Redis服务器的连接。
在安全组中,开通6379的端口。
使用IP + 端口连接redis实例。
进行redis的key操作。
10. 小结:
docker可以在共享相同内核空间的单个主机上运行基于不同 Linux 发行版的容器。例如,在 Ubuntu 服务器上运行 RHEL、CentOS、基于 SUSE 的容器,只有用户空间不同,内核空间相同,可以构建MySQL、Redis、Nginx的容器或集群。
通过对华为云耀云服务器L实例安装docker及docker-compose,再部署MySQL和Redis的容器,并没有发现不满足需求的,安装的过程中,默认自带的华为云源下载的速度非常的快,是值得推荐的。
以下为安装过的软件清单:
以下为软件安装部署整体测试进度:
相关文章:
华为云云耀云服务器L实例评测|企业项目最佳实践之docker部署及应用(七)
华为云云耀云服务器L实例评测|企业项目最佳实践系列: 华为云云耀云服务器L实例评测|企业项目最佳实践之云服务器介绍(一) 华为云云耀云服务器L实例评测|企业项目最佳实践之华为云介绍(二) 华为云云耀云服务器L实例评测࿵…...
MAC上使用Wireshark常见问题
文章目录 介绍正文启动异常-Permission denied解决方法 过滤协议和地址指定源地址和目的地址调整 time format 介绍 简单记录Wireshark在日常使用过程中的遇到的小case。 正文 Wireshark相较于tcpdump使用较为简单,交互也更为友好。 点击Start即可启动抓包 启动…...
在C++中++a和a++有什么区别?
2023年10月16日,周一中午 a和a在语义上的区别 a是先进行运算(增加1),然后返回新值。 a是先返回原值,然后进行运算(增加1)。 a和a在效率上的区别 a直接返回新值,不需要临时变量保存原值。 而a需要先返回原值,然后再进行增加1的操作。这需要使用一个临时变量来保存…...
NewStarCTF2023公开赛道-压缩包们
题目提示是压缩包 用010editor打开,不见PK头,补上50 4B 03 04 14 00 00 00 将文件改成.zip后缀,打开,解压出flag.zip 尝试解压,报错 发现一串base64编码 SSBsaWtlIHNpeC1kaWdpdCBudW1iZXJzIGJlY2F1c2UgdGhleSBhcmUgd…...
oracle数据库增加表空间数据文件
查询数据文件:select * from dba_data_files order by file_name; 增加:alter tablespace 数据库名 add datafile data size 34359721984;...
【08】基础知识:React中收集表单数据(非受控组件和受控组件)
一、概念 非受控组件: 页面中所有输入类的 DOM,现用现取。 给组件绑定 ref 属性,在需要时通过 ref 获取相应值。 受控组件: 页面中所有输入类的 DOM,随着输入,将内容维护到状态 state中,当…...
数据结构之堆排序和前,中,后,层序遍历,链式二叉树
首先我们要知道升序我们要建小堆,降序建大堆,这与我们的大多人直觉相违背。 因为我们大多数人认为应该将堆顶的数据输出,但如果这样就会导致堆顶出堆以后,堆结构会被破坏,显然我们不能这样。 所有我们反其道而行&…...
多线程中ThreadPoolExecutor.map()中传递多个参数
with concurrent.futures.ThreadPoolExecutor(max_threads) as executor:results executor.map(get_captcha_image, ip_addrs, [img_url] * len(ip_addrs)) #要传入多个参数时,每个参数都得是固定相同长度的可迭代对象# 收集结果for result in results:print(resul…...
linux centos7 环境下 no such file or directory
目录 1.问题描述2.主要原因2.1修改后代码2.2修改前代码 总结参考 1.问题描述 预览excel文件时无法找到对应的html文件 2.主要原因 异常原因:代码获取的是系统的tmp文件,但是linux环境环境中心tmp目录是没有权限的,所以不能获取系统的根目录…...
Nginx 反向代理 SSL 证书绑定域名
配置 Nginx 反向代理和 SSL 泛域名证书绑定域名 Nginx 是一个功能强大的 Web 服务器和反向代理服务器,可以用于将客户端请求转发到后端服务器,并提供安全的 HTTPS 连接。本文将介绍如何配置 Nginx 反向代理,并使用 SSL 泛域名证书绑定域名&a…...
SpringBoot 集成 JMS 与 IBMMQ 代码示例教程
文章目录 前言一、集成 JMS 与 IBMMQ1、pom 依赖2、yml 配置3、Properties 配置类4、Factory 连接工厂类5、配置连接认证6、配置缓存连接工厂7、配置事务管理器8、配置JMS模板9、消息发送与接收 总结 前言 SpringBoot 集成 IBMMQ,实现两个服务间的消息通信。 一、集…...
大模型之Prompt研究和技巧
大模型之Prompt研究和技巧 大模型之Prompt编写简介组成技术Zero-ShotFew-shotCOTCOT-SCTOTGoTReAct 大模型之Prompt编写 简介 Prompt是是给 AI **模型的指令,**一个简短的文本输入,用于引导AI模型生成特定的回答或执行特定任务。 Prompt是你与语言模型沟…...
掌握Golang匿名函数
一个全面的指南,以理解和使用Golang中的匿名函数 Golang以其简单和高效而闻名,赋予开发人员各种编程范式。其中一项增强代码模块化和灵活性的功能就是匿名函数。在这篇正式的博客文章中,我们将踏上探索Golang匿名函数深度的旅程。通过真实世…...
HarmonyOS云开发基础认证---练习题二
【判断题】 2/2 Serverless是云计算下一代的默认计算范式。 正确(True) 【判断题】 2/2 接入认证服务后,用户每次收到验证码短信都需要开发者买单。 错误(False) 【判断题】 2/2 认证服务手机号码登录需要填写国家码。 正确(True) 【判断题】 2/2 在Cloud Functi…...
ffmpeg视频解码器的配置选项含义
lowres的含义 lowres是AVCodecContext结构体中的一个成员变量,用于指定编解码器的降低分辨率级别。 在某些情况下,为了加快编解码的速度或减少计算资源的消耗,可以通过设置lowres参数来降低编解码器的分辨率级别。这将导致编解码器在处理视…...
enter ubuntu boot option in virt-manager
在全屏模型下,启动过程中按下F8或者Ctrl F8。 参考:https://serverfault.com/questions/463024/how-do-i-access-the-f8-bootmenu-while-booting-a-windows-2008r2-kvm-guest-vm...
电商运营该如何做 AB 测试
更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 近年,电商行业进入了一个新的发展阶段,一方面电商市场规模持续扩大,另一方面直播电商、即时零售、社区团购等新兴电商业态在疫情…...
go环境部署
#env 命令查看 PATH 发现 #这两条环境变量是把 通过brew 安装的所有程序加入到环境变量中,其中就包含了go /opt/homebrew/sbin /opt/homebrew/bin#mac 系统 将原本 brew 安装的 go 1.20.5版本卸载 brew uninstall go #然后 去官网下载 https://go.dev/dl/ 想要的版本 1.21.0 …...
HTTP/2 中的漏洞
另一个热门漏洞是 CVE-2023-44487。 该漏洞与 HTTP/2 协议实施中的一个缺陷有关,可用于实施 DDoS 攻击。使用该漏洞的攻击被命名为 HTTP/2 快速重置。 为什么它很危险 要利用该漏洞,攻击者需要在 HTTP/2 会话中打开大量请求,然后在不等待服…...
智能油烟机 优化烹饪体验
如果说空调是夏天最伟大的发明,那么油烟机则是健康厨房的伟大推进者。随着科技的发展,智能化的油烟机逐渐走进了人们的日常生活。每当我们在爆炒、油炸食物的时候,油烟总能呛得人眼睛痛、鼻子难受,传统的油烟机面前我们还需要手动…...
啥?PS一秒成图?Adobe的逆天黑科技大公开
在日前举行的 Adobe MAX 创意大会上,Adobe Adobe Firefly Image 2(萤火虫二代成像模型)、Firefly Vector Model(萤火虫矢量模型)和Firefly Design Model(萤火虫设计模型)。 Firefly矢量模型是世…...
扫描器(xray和bp联动)
文章目录 分类主动扫描和被动扫描bp与xray联动 分类 扫描器分为对web的扫描器和对主机的扫描器 主动扫描和被动扫描 主动扫描: 输入某个URL,然后由扫描器中的爬虫模块爬取所有链接,对GET、POST等请求进行参数变形和污染,进行重放测…...
[C++]:1.初识C++和C语言缺陷补充。
初识C和C语言缺陷补充 一.主要内容:二.具体内容:一: 作用域1.命名空间:2.函数声明和定义:3.不存在命名冲突的情况: 二.输入输出:1.基本输入输出:2.关于std的展开: 三.函数…...
BUUCTF学习(三): PHP 代码审计
1、介绍 2、解题 (1)查看网页源代码 (2)返回链接 (3)代码审计...
推荐《Blue prison》
电视动画片《蓝色监狱》改编自金城宗幸原作、野村优介作画的同名漫画作品,于2021年7月31日宣布电视动画化的消息 [1]。该片由8Bit负责动画制作,于2022年10月9日起播出 [2],全24集。 该作评为Anime Corner 2022年年度体育动画 [24]࿰…...
goland安装教程
安装版本: goland-2023.2.3.exe...
java中okhttp和httpclient那个效率高
在比较OkHttp和HttpClient的效率时,需要考虑多个因素,包括性能、吞吐量、资源消耗等。这些因素往往取决于具体的使用场景和需求。 OkHttp是一个由Square开发的现代化HTTP客户端库,它在Android平台上广泛使用,并且也可以在Java应用…...
内存占用问题
虚拟内存介绍 虚拟内存就是将部分磁盘变成内存的拓展,用上去就好像是将内存变大了一样。 比如同样是16G的物理内存,有人能比你多开几个应用,你开两三个就要黑屏,然后浏览器说你内存不够。 打开任务管理器,内存也没有…...
代码随想录二刷 Day 34
455.分发饼干 这个题差不多是两个for循环遍历,然后用双指针法化简,自己可以大概写出来,漏了一个边界条件 class Solution { public:int findContentChildren(vector<int>& g, vector<int>& s) {sort(g.begin(), g.end(…...
软件开源快速开发框架:降本增效,助力流程化办公!
随着时代的进步和社会的发展,应用软件开源快速开发框架的优势特点,可以让不少客户朋友顺利实现流程化办公,朝着数字化方向迈进。流辰信息是专业研发低代码技术平台的服务商,一直在低代码平台领域深耕细作,努力钻研&…...
自己在公司上班做网站宣传 侵权吗/百度推广人联系方式
想当年,想弄iOS的版本必须弄台mac机器,虽然一开始要弄iOS的时候觉得在mac上开发感觉挺高富帅的,但是做多了之后就觉得在mac上开发各种不方便。现在好了,Unity3D 4.3开始支持在Windows切换到iOS平台,可以设置iOS特定参数…...
做网站怎么租个空间/2023年11月新冠高峰
先看看啥叫深拷贝?啥叫浅拷贝?假设B复制了A,修改A的时候,看B是否发生变化:如果B跟着也变了,说明是浅拷贝,拿人手短!(修改堆内存中的同一个值)如果B没有改变,说明是深拷贝…...
做公司网站需要什么材料/我想找一个营销团队
来自:三顿(ID:wordpptdream)作者:三顿华为出品的PPT长什么样?很多小伙伴第一反应想到的一定是高大上的发布会PPT:然而这次我在华为的官网上却发现了不少一言难尽的案例,一眼望去密密麻麻铺满了各种图示图表…...
苏州做网站公司有哪些/淘宝关键词优化技巧
Spring Boot 框架快速入门教程以大量示例讲解了 Spring Boot 在各类情境中的应用,让大家可以跟着老师的思维和代码快速理解并掌握。 适用于 Java 开发人员,尤其是初学 Spring Boot 的人员和需要从传统 Spring 转向 Spring Boot 开发的技术人员。 下边…...
如何做视频网站技术指标/外链价格
随着区块链技术从概念到落地的发展趋势,从2017年开始区块链技术已经有了初步的与现实商业场景结合的可能,这个热度在2018年升到顶端,区块链技术在全球开始部署应用。而2018年的中国,舆论和资本在区块链领域双管齐下,各…...
java编程做网站/营销推广方式
第一种方法:新建一个文本文件,输入以下内容 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\lnkfile] "IsShortcut""" 然后另存为,将文件名给为one.reg,文件类型更改为所有文件,然后双…...