docker,nginx,ssl最佳实践
基于我对docker,nginx还有ssl证书的部署,提出了我对这些服务最高效的部署方法。仅供参考,一定会有更好的方法,只是我还有待学习 使用docker部署nginxdocker部署nginx有什么好处呢?大概就是可以把所有相关的配置文件汇集在一块,也方便在不同的服务器中迁移。这里提供部署所使用的docker代码: 1234567891011# 先创建一个nginx网络docker network create nginx_container# 运行nginx并添加到该网络中docker run --name=nginx \--volume=/home/{user}/{your_path}/nginx/logs:/var/log/nginx \--volume=/home/{user}/{your_path}/nginx/html:/etc/nginx/html...
使用gitea action实现CICD
CICDCI/CD 是持续集成和持续交付/部署的缩写,旨在简化并加快软件开发生命周期。 持续集成(CI)是指自动且频繁地将代码更改集成到共享源代码存储库中的做法。持续交付和/或持续部署(CD)是一个由两部分组成的过程,涉及代码更改的集成、测试和交付。持续交付不会自动部署到生产环境,持续部署则会自动将更新发布到生产环境。 简单来说,就是我们将代码提交到远程仓库后,自动化服务会替我们完成测试交付和部署的功能。 常用的CICD工具在本文中我将演示使用gitea actions实现hexo的自动部署功能。 正片开始正如其名,其实gitea和github actions的功能几乎一致,就是沿用下来了而已。在我们的操作过程中,主要有三步: 使用docker启动一个act_runner,作为action的服务器 配置deploy.yml实现推送时,自动部署到服务器 使用nginx展示部署后的页面 安装act_runner打开gitea的官方文档可以查阅关于act_runner的配置信息 注册runner在运行Act...
docker服务器白嫖
这篇文章的主要面向人群:临时使用linux服务器来测试一些程序,项目等。 play with docker进入这个链接,然后登陆后,就会看到如下界面他会给你提供4个小时的免费使用时长,而且你可以创建多个实例。每个实例都是4h4g的docker服务器。而且这些示例你可以通过ssh远程连接,也可以直接开放端口直接开放在外网。(可是说是配置拉满的免费服务了) 创建完成后,会有一些问题需要解决,第一,他的服务器系统并不和我们常用的ubuntu,centos类似。于是要在这个服务器上跑项目,肯定会有很多环境配置不方便。所以我们使用docker来跑一个ubuntu供我们使用命令如下: 1234docker run -itd --privileged --init -v /:/mnt --network host ubuntu --name ubuntu# 可以避免僵尸进程和孤儿进程--privileged --initdocker exec -it ubuntu bash#...
ubuntu使用ssh密钥登录
配置公钥和私钥在Ubuntu或者Windows上运行ssh-keygen,生成一对公私钥。他会默认保存在C:/{User}/.ssh目录下id_rsa是私钥,需要传输到其他客户端机器,比如Windows做后续处理。id_ras.pub是公钥,里面含有公钥字符串。 然后将id_ras.pub公钥的内容复制到你ubuntu用户下的authorized_keys文件中把公钥复制到这个文件中即可。 注意,使用追加,而不是覆盖。不要把别人也部署过的公钥删除了 修改配置文件禁止密码登陆和允许免密码登陆都是通过修改/etc/ssh/sshd_config 文件实现,只需要设置如下的两个选项为yes 和no即可:PubkeyAuthentication yesPasswordAuthentication no 修改完毕后重启ssh 服务:sudo service ssh restart 注意,有的时候,你会发现你修改的配置没有生效。因为他在这个目录下也有相同的配置文件。你需要将这个目录下的配置文件也修改后才可以生效。
ubuntu server快速启动
在配置本地服务器时,安装了ubuntu server他有一个默认配置就是会在启动时检查所有网口是否都正确配置了网络。而且这个时候他会等待接近2分钟以上的时间,而对于部分人而言,只连接一个网口就足够使用了。所以为了快速启动服务跳过这些等待时间需要修改一些配置参数 自检命令:systemd-analyze blame系统自查,会检测系统启动耗费了哪些时间 /etc/systemd/system/network-online.target.wants在这个目录下,有关于系统网络启动时的配置文件:systemd-networkd-wait-online.service 加上TimeoutStartSec=3sec这个参数后,执行系统重启,你就可以享受快速的系统重启了
自部署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: ...