自部署gitea
部署gitea的原因使用gitea的原因:本质上是因为在本地硬盘上每次学习一些新知识,于是创建一些demo性质的应用。特别是vue,react之类的前端应用。每个项目都会有node_module这个文件夹,这里面有特别多的4k小文件,这导致我备份硬盘数据时。速率总是被压的很低。所以我在想能不能通过一个本地部署的类似github的服务器,实现我对这些项目的备份,然后通过配置.gitignore忽略掉哪些中间过程文件和复杂的库文件。来实现对磁盘的高效率备份。 部署完gitea后,发现他其实可以很好的替代github,gitee来作为我自己的代码仓库使用。而且他也确实有很多优点,包括如下图片等功能。而且他作为本地化服务,我不需要担心网络故障,权限校验等问题。 部署过程这部分内容主要参考大佬文章以及gitea官网 我只说明我需要使用的docker...
白嫖GPU来跑机器学习
google colab地址使用google的服务的话,需要有一些科学工具来帮忙,这些我默认你们都知道了在这里第一个选项可以启动服务,第二个选项可以修改GPU的类型,因为是免费的,所以只有很少的选项: 他用来跑服务的话,俺记得是一次不能超过6个小时,你需要访问数据集的话,可以通过Google 硬盘来加载。 kaggle地址这也是一个国外的白嫖gpu的平台,他的限额是每周30个小时,对于初学者而言已经绰绰有余了。而且他支持离线运行,即便你因为网络不稳定而掉线。他也会稳定在后台跑完,并完成数据的输出。这里是它可以白嫖使用的一些GPU。 天池notebook地址他的优点就是国内平台,可以很快捷的访问。他提供每个月60个小时的额度,如果不够用你再考虑使用kaggle等其他的。 以上
考研心得
今天是12月24号。已经考完试两天了。在这里,我想记录一下我考前考后的内心变化。我想这应该会是一件很有意思的事情。 大抵记得我应该是7月份才开始认真准备考研的吧,满打满算我学了也不过4,5个月。在这期间我时常会问自己为什么要考研?我考研的决心,目的到底是什么? 我并没有给出让自己满意的答案。同样的,也有些同学惊异于我怎么突然准备考研了。这个我倒是可以给出理由(那就是家里人想让我考上研究生,或许是村里出了几个研究生让他们在村中聊天时艳羡不已。所以期望我也考一个吧)。至于我自己给自己的理由的话:可能是因为找工作简历不好看,既没实习也没竞赛。可能我闲散惯了,就是单纯的陪个跑? 所以呢,我自打一开始都没对考上某某某学校有着特别的执着,我对考研的想法也就是我可以继续自由的学习自己喜欢的内容,自己感兴趣的知识。 这也就决定了我的心态:超级良好。 从刚开始的认真复习(每天只玩一两把游戏),到后面(每天就学两三个小时)。...
在windows下为mingw配置opencv
快速上手安装dev c++或者小熊猫c++ 这里推荐使用小熊猫c++,他就是dev c++的pro max版本,在保持样式基本相同的同时,有很多代码高亮,提示等功能。下载链接 这是官网链接:http://royqh.net/redpandacpp/安装过程一路默认,只需要修改你所安装的位置即可。 下载已经编译好的opencvgithub realese链接注意,下载时需要和你电脑本地的mingw版本号为位数相对应才可以正常使用。 下载后,将其解压在某个具体的路径,如下: 配置编译器点击工具->选项->编译器 接下来,分别添加bin文件,lib文件目录和include目录 注意,选择的目录为你所解压的opencv文件所在的目录。 最后,在链接时添加如下选项,即完成opencv的配置。 1-lopencv_core455 -lopencv_imgproc455 -lopencv_highgui455 -lopencv_imgcodecs455 -lopencv_videoio455 -lopencv_calib3d455 -lopencv_features2d455...
在 Ubuntu 服务器 22.04 上设置静态 IP 地址
登录到你的 Ubuntu 服务器 22.04,查找 netplan 配置文件。它位于 /etc/netplan 目录下。 12345 cd /etc/netplan/$ ls -ltotal 4-rw-r--r-- 1 root root 116 Oct 12 04:03 00-installer-config.yaml$ 运行以下 cat 命令以查看 00-installer-config.yaml 的内容。 根据上面的输出,它说我们有 ens33 接口,它正在从 DHCP 服务器获取 IP。查看接口名称的另一种方法是通过 ip 命令。现在,要配置静态 IP 代替 DHCP,使用 vi 或 nano 编辑器编辑 netplan 配置文件并添加以下内容。 1234567891011121314$ sudo vi 00-installer-config.yaml# This is the network config written by 'subiquity'network: renderer: networkd ethernets: ...
让pdf阅读变成深色模式
123javascript:void(document.documentElement.style.filter='invert(89%)')//或者document.documentElement.style.filter='invert(89%)'
GCC 中在非 void 函数中不写 return 的情况
最近在复习408关于二分查找时,看到一个使用递归实现的方法。代码并不难实现。但是在写完这段代码后,发现一个问题。我在递归中并没有及时return结果。但是结果却是正确的下面贴上代码: 1234567891011121314151617181920212223242526#include <bits/stdc++.h>using namespace std;int BinSearchRec(int *ST, int key, int low, int high);int main(){ int st[10] = {3,6,8,11,15,18,20,21,25,30}; cout << BinSearchRec(st, 15, 0, 9) << endl;//查找15在数组中的位置 //结果为4}int BinSearchRec(int *ST, int key, int low, int high){ if (low > high) return...
Linux如何大量删除小文件
清楚了问题现象,解决方案就从除去rm -rf *命令的方式之外,还有哪些方法可用,如果通过网络搜索,可能会找到结合find命令再去执行rm的方式,但其实效率非常差,具体写法这里就不列出了,因为我们通常也不会这样处理。那么如何较为效率的删除大批小文件呢?结合网络的经验,并实测验证,最终总结了两种常见的解决方案,效率上也都尚可。 方案一:巧用rsync的方式达到删除目的建立一个空文件夹,使用rsync --delete-before -d <空文件夹> <需要清理删除小文件的目录>命令最终达到删除大批小文件的目的。下面演示具体操作: 1234[oracle@jystdrac2 adump]$ mkdir /data/null[oracle@jystdrac2 adump]$ ls -l /data/nulltotal 0[oracle@jystdrac2 ~]$ nohup rsync --delete-before -d /data/null/ /opt/app/oracle/admin/crmdb/adump/...
获取docker run命令
有时候我们需要获取docker run命令,比如我们在docker中运行了一个容器或者别人帮我们启动了一个docker但是未告知我们应该如何再启动一个。这时候我们可以通过docker inspect命令来获取。 安装1pip install runlike 支持的参数12345678910111213runlike nginx # 获取nginx容器的run命令Usage: runlike [OPTIONS] [CONTAINER] Shows command line necessary to run copy of existing Docker container.Options: --no-name Do not include container name in output -p, --pretty -s, --stdin --help Show this message and exit. 已启动容器通过 docker update 对设置 restart 选项1docker update --restart=always...
设置非root账号不用sudo直接执行docker命令
起因是经常使用docker,但使用的是自己的账户,这样就每次都需要使用sudo来创建容器和相关的目录。而这样带来的后果就是,我后续的每一个操作都需要加上sudo命令。否则连修改文件都做不到。因此写下这篇文章 设置 创建名为docker的组,如果之前已经有该组就会报错,可以忽略这个错误: 1sudo groupadd docker 将当前用户加入组docker: 1sudo gpasswd -a ${USER} docker 重启docker服务(生产环境请慎用): 1sudo systemctl restart docker 添加访问和执行权限: 1sudo chmod a+rw /var/run/docker.sock 然后就可以了,不用再使用sudo命令了。