安装部署Jenkins
一、安装
debain系统安装
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins
使用下面的命令查看启动情况:
sudo systemctl status jenkins
docker-compose安装
安装后由于一些后续的操作放弃了,比如说工作空间问题、用户权限问题、需要的开发环境问题等等,个人感觉配置起来比较麻烦,就放弃了
docker-compose文件内容如下:
version: "3"
servic ...
docker部署Oracle12C
前言
近期工作需要,数据库换成了oracle,而我自己没有私有化的oracle数据库,为了之后工作的方便,决定私人部署一个oracle数据库。
为了方便,还是使用的docker方式部署在nas上面了,看了看docker hub,oracle的镜像全部是6年前的,我这边直接选择了第一个镜像truevoly/oracle-12c
好了,下面正式开始
安装部署
我这边直接使用docker命令下载并启动镜像,下面是命令:
# docker命令
docker run -d -p 1521:1521 --name oracle truevoly/oracle-12c
# 验证是否启动
配置
为了使用自带的SqlPlus,需要添加一下环境变量,有两种办法,
进入docker容器内部,直接修改文件
将文件从docker容器中复制出来,修改后,在拷贝进去
docker内修改文件
进入docker容器内部才行,下面是进入的命令:
docker exec -it 773382d440e8 /bin/bash
注意,代码中的773382d440e8是容器ID,需要 ...
ollama和open-webui部署ds
引言
最近,deepseek是越来越火,我也趁着这个机会做了下私有化部署,我这边使用的ollama和 open-webui实现的web版本
ollama
简介
Ollama 是一个开源的工具,专门用于简化机器学习和 AI 模型的部署。它提供了一个统一的平台,允许你通过命令行工具创建、管理和更新模型。无论你是想在本地开发环境中运行模型,还是将其部署到云端,Ollama 都可以简化这一过程。
Ollama 支持多种常见的机器学习模型框架,包括但不限于 TensorFlow、PyTorch、Hugging Face Transformers 等,此外还支持类似 DeepSeek 这种自定义的搜索引擎模型。
核心特性
易于使用的命令行界面:Ollama 提供了简单直观的命令行工具,可以通过几条命令就完成模型的创建、启动、更新等操作。
环境隔离:Ollama 可以为每个模型提供独立的运行环境,避免了不同模型之间的依赖冲突。
跨平台支持:无论你是使用 Linux、Mac 还是 Windows,Ollama 都可以无缝运行。
自动更新:Ollama 会自动为模型提供更新,确保你使用的是最新的版本 ...
如何在openEuler上安装和配置openGauss数据库
本文将详细介绍如何在openEuler 22.03 LTS SP1上安装和配置openGauss数据库,包括数据库的启动、停止、远程连接配置等关键步骤。
1、安装
使用OpenEuler-22.03-LTS-SP1-x64版本的系统,通过命令行安装openGauss数据库。
1.1、确保系统软件包索引是最新的
以root权限执行以下命令:
sudo dnf update -y
1.2、安装openGauss
以root权限执行以下命令:
sudo dnf install -y opengauss
安装完成后,二进制文件目录在 /usr/local/opengauss:
ls -l /usr/local/opengauss
默认数据目录在 /var/lib/opengauss/data:
ls -l /var/lib/opengauss/data
2、数据库启动停止
需要切换到opengauss用户下操作:
su - opengauss
2.1、查询数据库状态
在opengauss用户下执行命令:
ps ux
...
你一看就懂的Git详解
Git基础
git简介
1、简介
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
2、Git 与 SVN 区别
GIT 是分布式的,SVN 不是:这是 GIT 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。
GIT 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn , .cvs 等的文件夹里。
GIT 分支和SVN的分支不同:分支在SVN中一点不特别,就是版本库中的另外的一个目录。
GIT 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 GIT 缺少的最大的一个特征。
GIT 的内容完整性要优于 SVN:GIT 的内容存储使用的是 SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络 ...
element-plus选择器自定义筛选方法(拼音首字母搜索)
引言
最近,来了个需求,需要在下拉列表中做筛选。下拉列表显示的是中文,但筛选时可能会输入中文的拼音首字母。因此,需要实现一个筛选功能,能够根据拼音首字母筛选出匹配的选项。
自定义筛选方法
前端使用的是 vue3 和 element-plus。我使用的组件是 Select 选择器 | Element Plus 。为 el-select 添加 filterable 属性即可启用搜索功能。默认情况下,Select 会找出所有 label 属性包含输入值的选项。但这里需要匹配拼音首字母进行搜索,因此要通过传入一个 filter-method 来实现。filter-method 是一个函数,它会在输入值发生变化时调用,参数为当前输入值。
下面是这部分的简短代码:
vue部分:
<el-select
v-model="queryParams.word"
filterable
placeholder="请输入"
clearable
:filter-method="filterMethod&quo ...
Java实现RS485串口通信
近期,我接到了一个任务,将报警器接入到Java项目中,而接入的方式就是通过RS485接入,本人之前可以说是对此毫无所知。不过要感谢现在的互联网,通过网络我查到了我想要知道的一切,这里记录下本次学习的情况,供大家参考
一、RS485简单介绍
RS485是一种常用的串行通信标准,广泛应用于工业自动化和嵌入式系统。它采用差分信号传输,具有抗干扰能力强、传输距离远等优点。以下是关于RS485串口的一些关键点:
1、硬件连接
RS485使用差分信号传输,通常需要使用收发器(如MAX485芯片)将串口的TTL信号转换为RS485信号
可以使用USB转RS485转换器实现与计算机的连接
2、通信方式
RS485支持半双工通信,即发送和接收不能同时进行,通常需要软件控制来实现发送和接收的切换
通过两个数据线进行通信,数据线为A和B,A为正,B为负
3、数据发送和接收
在数据发送时,控制器的TX信号经过收发器转换成差分信号传输到总线上
接收时,差分信号通过收发器转换为TTL信号,再传输给控制器的RX端口
数据传输速率可以根据具体应用需求进行调整,常见的波特率有9600 ...
20240512盖章整理
盖章整理
ts(typescript)看这篇就够了
Typescript 简介
TypeScript是用于应用程序规模开发的JavaScript。
TypeScript是强类型,面向对象的编译语言。它是由微软的Anders Hejlsberg(C#的设计者)设计的。
TypeScript既是一种语言又是一组工具。TypeScript是JavaScript的一个超集。换句话说,TypeScript是JavaScript加上一些额外的功能。
TypeScript 扩展了 JavaScript 的语法,所以任何现有的 JavaScript 程序可以不加改变的在 TypeScript 下工作。TypeScript 是为大型应用之开发而设计,而编译时它产生 JavaScript 以确保兼容性。
TypeScript 可以编译出纯净、 简洁的 JavaScript 代码,并且可以运行在任何浏览器上、Node.js 环境中和任何支持 ECMAScript 3(或更高版本)的 JavaScript 引擎中。
TypeScript 的优势
TypeScript相对于纯粹的JavaScript具有许多优势,特别是在开发大型应用程序时。以下是一些TypeSc ...
win电脑安装绿色版MySQL8
一、下载压缩包
下载mysql server的zip文件,地址:Windows (x86, 64-bit), ZIP Archive
解压后:
二、创建配置文件(可忽略)
配置文件可存放位置及名称:
C:\WINDOWS\my.ini
C:\WINDOWS\my.cnf
C:\my.ini
C:\my.cnf
解压目录的根目录下(mysql-8.3.0-winx64)\my.ini
解压目录的根目录下(mysql-8.3.0-winx64)\my.cnf
三、初始化数据库
以管理员身份运行cmd,进入到bin目录,运行下面的命令创建mysql默认的数据库,并创建一个root账号,空密码
mysqld --initialize-insecure
四、启动MySQL服务
我使用的是安装到服务的方式,执行下面的命令
mysqld --install-manual
默认创建的服务名称为MySQL,然后在服务中启动
也可以直接运行一下命令
mysqld
这是最简单的方式了,但是无法安装到服务中,其他详细的可参看帮助说明
mysqld --verbose --he ...
Git操作指南:子模块、用户名修改和Subtree
引言
在软件开发中,版本控制是一个至关重要的环节。Git 作为目前最流行的版本控制工具之一,提供了丰富的功能和灵活的操作方式。本文将介绍一些常用的 Git 操作,包括管理子模块、修改用户名、使用 Git Subtree 合并项目以及其他一些常见操作。
一、引用子模块
git submodule是一个用于将其他两个 Git 仓库嵌入到一个主仓库中。这样做可以使主仓库包含其他两个仓库的内容,并能够管理它们的版本和更新。以下是将两个其他仓库添加为子模块到主仓库的基本步骤:
1、初始化主仓库
mkdir main_project
cd main_project
git init
2、添加子模块
使用 git submodule add 命令将其他仓库添加为子模块到主仓库中。
git submodule add <URL_of_repository1> repository1_folder
git submodule add <URL_of_repository2> repository2_folder
3、提交更改
git commit -m "Add sub ...
docker-compose部署单机版nacos
nacos数据库建表语句
/*
* Copyright 1999-2018 Alibaba Group Holding Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT ...
Map类方法整理(jdk8)
前言
今天在查看力扣周赛385题解时,发现了几个我平时没注意的map方法,看了jdk相关的源码,感觉很巧妙,可以帮我节省代码,于是乎顺带着整个Map类的方法都过了一遍,下面是我看后整理的内容。
Map类中包括了以下方法:
clear()
compute(K,BiFunction<K,V,V>)
computeIfAbsent(K,Function<K,V>)
computeIfPresent(K,BiFunction<K,V,V>)
containsKey(Object)
containsValue(Object)
entrySet()
equals(Object)
forEach(BiConsumer<K,V>)
get(Object)
getOrDefault(Object, V)
hashCode()
isEmpty()
keySet()
merge(K,V,BiFunction<V,V,V>)
put(K,V)
putAll(Map<K,V> ...
win11新电脑环境安装
新的mini主机到了,为了之后的开发方便,需要先安装各种软件,这里记录下需要安装的软件,我这边是以Java为主
Java
我这边Java下载安装的是17版本的,下载地址:Java Downloads | Oracle,下面是下载页面,根据自己电脑的情况安装不同的版本
maven
我使用的是3.6.3,下载地址:maven
nvm
安装包在GitHub中下载的,安装说明也挺详细,地址:nvm-windows
git
官网下载地址:git
nodejs
通过nvm安装LTS版本
1686. 石子游戏 VI(2024-02-02)
力扣每日一题
题目:1686. 石子游戏 VI
日期:2024-02-02
用时:15 m 0 s
时间:103ms
内存:57.95MB
代码:
class Solution {
public int stoneGameVI(int[] aliceValues, int[] bobValues) {
int cnt = aliceValues.length;
int[][] arrs = new int[cnt][2];
for (int i = 0; i < cnt; i++) {
arrs[i] = new int[]{aliceValues[i],bobValues[i]};
}
Arrays.sort(arrs,(a,b)->(b[0]+ b[1])-(a[0]+ a[1]));
int sub = 0;
for ...