阿里云操作日记

昨天买了一个超级便宜的阿里云服务器,2核2G,3M固定带宽,40G ESSD Entry云盘,搭载一个简单的系统,就想到了docker轻量级,易于管理
其实docker很好用,第一步就是安装docker

一、docker安装与端口放开

# 下载Docker安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh
# 执行安装脚本
sudo sh get-docker.sh
# 启动Docker服务
systemctl start docker
# 有了前面三步基本上就搞定了
# 设置开机自启

在这里插入图片描述
然后你想要安装什么样子的镜像就去docker镜像官网去搜索,执行相应命令就行,如下图
在这里插入图片描述
其实也没有必要这么麻烦docker pull mysqldocker的命令一般是这样子的,你想要什么版本,就在mysql后面打一个冒号,然后带上版本号,如docker pull mysql:8.0.22,docker pull mysql:5.7等等。
在这里插入图片描述
我的MySQL启动命令如下,参考:

 #将docker的3306端口挂载到linux系统的3306端口
docker run -p 3306:3306 --name mysql \# 将主机的 /home/mysql/log 目录挂载到容器的 /var/log/mysql 目录,用于存储 MySQL 的日志文件。-v /home/mysql/log:/var/log/mysql \# 将主机的 /home/mysql/data 目录挂载到容器的 /var/lib/mysql 目录,用于存储 MySQL 的数据文件。-v /home/mysql/data:/var/lib/mysql \# 将主机的 /home/mysql/conf 目录挂载到容器的 /etc/mysql 目录,用于存储 MySQL 的配置文件。-v /home/mysql/conf:/etc/mysql \# 将主机的 /home/mysql/mysql-files 目录挂载到容器的 /var/lib/mysql-files 目录,用于存储 MySQL 的文件数据。-v /home/mysql/mysql-files:/var/lib/mysql-files \# 设置 MySQL 的 root 用户密码为 123456。这个参数使用了环境变量来传递密码信息。-e MYSQL_ROOT_PASSWORD=123456 \# 以后台模式运行 MySQL 容器,并使用 mysql:8.0.22 镜像作为容器镜像。-d mysql:8.0.22 \# 设置 MySQL 的字符集为 utf8mb4(支持 Emoji 表情),并使用 utf8mb4_0900_ai_ci 排序规则。这个参数可以确保 MySQL 能够正确地处理 Unicode 字符。--character-set-server=utf8mb4 --collation-server=utf8mb4_0900_ai_ci

做完这一切,你还要开放开放阿里云的3306端口,输入如下命令即可

# 查看防火墙状态
firewall-cmd --state
# 如果没有安装就安装防火墙
systemctl start firewalld.service
# 开放3306端口,这里如果开放其他端口之间将3306替换成你需要开放的其他端口号即可
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 加载一下
firewall-cmd --reload
# 查看本机所开放的端口
firewall-cmd --list-ports

做完这一步,还需要在阿里云操作界面,安全规则那里将3306作为tcp开放出来,如下
在这里插入图片描述

二、将jar包做成docker镜像

我的jdk版本用的是openjdk11,如下文件中之间选择你自己的jdk版本就行

#使用openjdk 11基本映像
FROM openjdk:11# 创建一个目录来存放应用程序
WORKDIR /usr/src/lechat#将JAR文件复制到容器中
COPY lechat-space-serve-1.0-SNAPSHOT.jar /usr/src/lechat#容器启动时要运行的命令
CMD ["java", "-jar", "/usr/src/lechat/lechat-space-serve-1.0-SNAPSHOT.jar"]

三、远程debug

如下图配置Idea,2步搞定,注意:端口号不要和spring应用的端口号一样然后再copy那一行remote JVM参数
在这里插入图片描述
用来启动远程的jar包,例如: java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:18888 -jar userJob-0.0.1-SNAPSHOT.jar
在这里插入图片描述

看到这句话说明服务端应用启动成功:Listening for transport dt_socket at address: 18888,然后看到这句话说明本地环境已经连接服务器成功:Connected to the target VM, address: '121.199.26.113:18888', transport: 'socket',至此就可以打本地的端点调试了。

最近开发心得

1、接手老系统改造时一定要注意,新增表记录是否是被允许的(也就是新增的这条记录能否在现有的业务下形成业务闭环,不确认就和产品确认)本人在做多边形相交业务时,对warehouse里面的仓库进行新增设置,warehouse_settings有就更新,没有就新增,其实会影响现有业务。后来改成有就更新,没有报错提示用户先新增仓库的设置,然后再保存多边形描点。
2、改bug有影响点一定要梳理出来,让测试再回归一下。不要走经验。
3、多多自测,自测,还是自测!

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

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

相关文章

盲返模式:电商领域的新玩法与商业创新

大家好,我是微三云周丽,今天给大家分析当下市场比较火爆的商业模式! 小编今天跟大伙们分享什么是什么是盲返模式? 随着互联网的深入发展,电商行业正面临着前所未有的机遇与挑战。在这个竞争激烈的市场环境中&#xff…

uniapp 使用地图

可以使用 map | uni-app官网 uniapp中的map标签,也可以自己引入地图的js 如下图 使用 uniapp中的map标签 需要注意要配置key

HTML 中创建 WebSocket服务与接收webSocket发送内容

效果图 服务端 html客户端接受的消息 接下来开始实现服务端 创建server.js const WebSocket require(ws);const wss new WebSocket.Server({ port: 8877 });wss.on(connection, function connection(ws) {console.log(WebSocket connection opened.);// 每隔 5 秒发送一次…

人耳的七个效应

1、掩蔽效应 • 人们在安静环境中能够分辨出轻微的声音,即人耳对这个声音的听域很低,但在嘈杂的环境中轻微的声音就会被淹没掉,这时将轻微的声音增强才能听到。 • 这种在聆听时,一个声音的听阈因另一声音的出现而提高的现象&…

2.搭建增长模型-福格行为模型

福格行为模型 Bmat B为行动 m是动机 a是能力 t是触发 mat三者是同时出现的 比如连续签到30天,才送1天会员,这明摆着欺负人,用户难有积极性 但是签到即可或者会员1天,连续30天送30天,这样用户每天都会积极的来签到&…

【数据结构】哈希桶

目录 前言: 开散列(哈希桶) 开散列的概念 哈希桶的模拟实现 整体框架 查找 插入 删除 析构函数 前言: 闭散列线性探测缺点:一旦发生哈希冲突,所有的产生哈希冲突的数据连续存储在一块区域&#xff…

ios微信小程序禁用下拉上拉

第一步&#xff1a; page.json配置页面的"navigationStyle":"custom"属性&#xff0c;禁止页面滑动 "navigationStyle":"custom" 第二步&#xff1a; 页面里面使用scroll-view包裹内容&#xff0c;内容可以内部滑动 <view class&…

Oracle中rman使用记录

最近在项目中&#xff0c;遇到使用RMAN的操作来恢复数据库中某个时间归档日志&#xff0c;RMAN的原理和理解&#xff0c;网友们百度了解一下。我重点将实操部分了。直接上实验环节&#xff0c;让网友更懂。&#xff08;特别提醒&#xff1a;我是1:1用VMware克隆数据库进行RMAN还…

如何看待AIGC技术

目录 1.概述 2.技术应用 2.1.媒体与内容创作 2.2.教育与学习 ​​​​​​​2.3.艺术创作 ​​​​​​​2.4.游戏产业 ​​​​​​​2.5.工业设计 ​​​​​​​2.6.对未来社会的影响 2.7.可能的发展方向 ​​​​​​​2.8.小结 3.伦理与风险 3.1.AIGC技术面临…

零基础HTML教程(26)--表单元素标注

文章目录 1. 引子2. 使用标注3. 元素的id与name4. 更好的写法5. 小结 1. 引子 我们看一个表单&#xff1a; <form>姓名&#xff1a;<input type"text"><br>手机号:<input type"text"><br>年龄:<input type"text&qu…

MES管理系统工单管理模块的重要性

在现代制造企业中&#xff0c;MES管理系统作为生产流程管理的核心&#xff0c;工单模块则扮演着不可或缺的角色。它不仅是MES管理系统的基石&#xff0c;更是连接各个生产环节的纽带&#xff0c;确保生产流程的顺畅与高效。 首先&#xff0c;我们需要明确MES管理系统在制造企业…

深度解析 Spring 源码:揭秘BeanFactory 之谜

文章目录 一、认识BeanFactory1.1 BeanFactory的概述1.2 BeanFactory与 ApplicationContext的区别 二、BeanFactory源码解读2.1 BeanFactory 接口2.1.1 getBean()2.1.2 containsBean()2.1.3 isSingleton() 2.2 DefaultListableBeanFactory 类2.2.1 registerBeanDefinition()2.2…

南宁建筑模板供应商:贵港市能强优品木业有限公司

贵港市能强优品木业有限公司&#xff0c;作为南宁地区知名的建筑模板生产厂家&#xff0c;拥有25年的丰富生产经验。该公司生产的建筑覆膜板以其稳定的质量和高周转次数而闻名&#xff0c;多年来参与了国内各地区众多大型建筑项目&#xff0c;并获得广大客户的一致好评。 质量稳…

Object类 equals方法 hashCode方法 集合

Object类 Object类是所有类的父类&#xff0c;所以&#xff1a; Object的类的成员变量和成员方法&#xff0c;其余的类会继承&#xff0c;可以使用 Object类可以使用多态创建任意对象&#xff0c;同时拥有子类的重写方法 我们先假设子类重写了equals方法和hashCode方法&…

Flink 实时数仓(一)【实时数仓离线数仓对比】

前言 昨天技术面的时候&#xff0c;面试官说人家公司现在用的都是最新的技术&#xff0c;比如 Doris 等一些最新的工具&#xff0c;确实这些课是学校永远不会开设的&#xff0c;好在他说去了会带着我做一做。可是 ...... 学院舍不得让走啊 ...... 没办法&#xff0c;情况就是这…

python代码报错requests.exceptions.SSLError

直接浏览器访问报ssl错误的网站&#xff0c;然后找到证书&#xff0c;选择导出 然后在cmd里面执行&#xff0c;去查看certifi的位置 python -c "import certifi;print(certifi.where())"找到之后用文本编辑器打开&#xff0c;我用的vscode 滚动到最后面&#xff0c…

什么是重放攻击(Reply attack)?

什么是重放攻击(Reply attack)? 重放攻击&#xff0c;也称为回放攻击&#xff0c;是一种网络攻击方式。重放攻击是一种中间人攻击&#xff0c;攻击者通过截获合法的数据传输并重新发送它们来欺骗接收方&#xff0c;让接收方误以为是合法的消息。重放攻击是非常常见的&#xf…

在IDEA中使用.env文件导入系统配置的图文教程

JetBrains的IDEA是一款功能强大的集成开发环境&#xff0c;为开发人员提供了丰富的功能和工具。使用.env文件来管理配置信息在IDEA中非常简单。 旧版本默认支持&#xff0c;新版本idea需要安装插件才可以。 这里我们可以安装EnvFile插件&#xff0c;步骤如下&#xff1a; 在弹…

详解数仓的向量化执行引擎

前言 适用版本&#xff1a;【基线功能】 传统的行执行引擎大多采用一次一元组的执行模式&#xff0c;这样在执行过程中CPU大部分时间并没有用来处理数据&#xff0c;更多的是在遍历执行树&#xff0c;就会导致CPU的有效利用率较低。而在面对OLAP场景巨量的函数调用次数&#x…

ctfshow web29-web40

命令执行 看清都过滤了些什么&#xff01;&#xff01; 知识点&#xff1a; web34&#xff1a;当;和()被过滤了就用语言结构&#xff0c;一般有echo print isset unset include require web37&#xff1a;data协议是将后面的字符串当成php代码执行&#xff0c;例如 /?cdat…