【Linux】浏览器写代码!部署code-server远程vscode网页
部署code-server远程vscode网页,在浏览器上写代码! 参考文档 https://developer.aliyun.com/article/876967#slide-7 1.什么是code-server? 注意,这不是在linux系统上安装vscode软件(和windows一样的vscode客户端) 开源仓库 https://github.com/coder/code-server code-server是一个社区项目(非微软官方)其作用是在你的linux主机(云服务器)上部署一个可以在浏览器上访问的vscode页面,类似官方的vscode.dev 微软官方推出的vscode网页版 https://vscode.dev/ 它可以通过浏览器的api访问你电脑上的本地文件,此时浏览器就是一个vscode客户端 code-server同理,其访问的是你linux服务器上的文件,作用类似于vscode插件remote ssh,让我们可以用浏览器,在任何电脑、平板上进行远程开发,无须下载vscode客户端或者ssh软件! 1.1...
【Docker】限制已运行容器的Cpu和内存
docker限制已运行容器的Cpu和内存 1.问题描述 最近云服务器的内存经常不够用,而且是莫名其妙的增多,在腾讯云的控制台里面看,4gb 的内存占用了3.2 gb,就卡到连 ssh 都连不上了 PS: 已换过网络和设备,确认不是用户端网络问题导致无法ssh 实在没辙了,只能把我的几个不热门的kook-bot移植到replit白嫖,再限制一下lsky图床docker镜像的内存用量 其实主要是nsfw-api的内存用量,我发现有人故意给我的图床上传h图。lsky后台由于鉴黄不通过,不允许上传,也看不到是谁干的。隔这压力测试呢? 我的图床基本只对自己的博客使用。开放游客上传,也只是方便大家临时上传一些图片,还请大家手下留情!!!😥 这个操作我做了几次,也算是一个高频操作了。在此记录一下如何更改一个正在运行中容器的内存限制 2.修改内存限制 先使用ps命令查看当前容器和对应的id 1docker ps 可以看到,lsky图床和nsfw的镜像分别是第二个和第三个 再用stats命令查看当前的状态 1docker stats 可以看到,图床的内存没有进行限制,nsfw...
【Linux】修改linux下的时区和系统时间
用配置文件,修改linux系统下的时区(所用系统 CentOS8) 1.问题来源 在linux上使用python的logging模块的时候,发现了一个问题,那就是模块里面的%(asctime)s打印的时间并非东八区的时间,而是格林尼治时间,比东八区的时间少了8小时 对于日志来说,这怎么行?总不能每次看日志的时候,自己手动给时间加8小时吧!那样对debug来说可不是什么方便事! 2.解决 百度了一下后,发现是我系统的时区问题。这个Centos系统是用docker安装的,内部的时区没有正常设置 1date 通过date命令可以查看系统当前的时间 1Sat Mar 4 01:29:59 UTC 2023 会发现是3月4日的凌晨1点,但实际上我是在上午9点写下的这篇博客 这就需要我们修改时区了! 刚开始,我尝试用tzselect命令进行时区的选择,再选择了上海时区后,系统的时间还是有问题。然后发现,需要修改文件配置,才能让时间生效 123/etc/timezone # 时区的配置/etc/localtime # 时间/usr/share/zoneinfo/Asia...
【Python】解决SSL certificate problem unable to get local issuer certificate
CentOS8 出现 SSL certificate problem: unable to get local issuer certificate 解决办法
【Nas】绿联安装CentOS8容器
绿联安装CentOS8容器 1.创建容器 先在客户端安装容器,随后用xshell进入绿联的ssh 绿联如何开启ssh参考视频;2023年11月后,新版本的绿联直接把远程调试打开,给出的调试密钥就是ssh的密码。绿联的ssh端口是922 执行如下命令,以特权模式创建一个centos容器,并将容器内的22端口映射给主机的22222端口;如果你是希望在centos容器上进行网络编程开发,请多映射几个端口,以免到时候没办法访问项目的尴尬情况! 123456docker run -d \ -p 22222:22 \ --name centos \ --privileged=true \ centos:latest \ /usr/sbin/init 搞定了之后,进绿联客户端,停止容器运行,设置一个文件路径给容器内部,方便docker容器和nas资料互传(不设置也不是不行) 注意,在客户端配置的时候,需要把所有能给的选项(-i -t...
【Docker】配置CentOS容器时出现 Error Failed to download metadata for repo 'appstream' Cannot prepare internal mirrorlist | 转载
本站经常搬运一些其他博主文章,主要是为了持久化访问。避免日后他人删文or原文无法访问;所有搬运的文章都会写明原文地址,并且不会展示本站的copyright_info 下文所出现的场景,是我在linux上使用docker安装centos容器时出现的! ✨在学习使用 docker 技术过程中,基于 centos 镜像自定义新的镜像,其中基础镜像 centos 需要提前安装好 vim 和 net-tools,然而在刚开始通过 yum -y install vim 安装 vim 时,便出现了错误提示信息: Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist ✨上面的报错信息意思是,从仓库 ‘appstream’ 下载元数据失败:由于镜像列表中没有 URL,不能准备内部镜像列表。 问题分析 ✨第一种可能的情况便是网络连接问题。检查是否可以连接外部网络,可以使用 ping baidu.com...
【C++】C++11中局部static变量的线程安全问题 | 转载
C++11中局部static变量的线程安全问题
【Curl】通过curl模拟referer获取到有防盗链的图片
本文所描述操作仅供学习curl命令,请勿用于盗刷他人图床等违规操作!🙅♀️ 1.说明 当我想把51la添加到我的导航站点,却发现它的icon图标有防盗链,禁止空referer访问的; 这点完全可以理解,为了防止他人盗刷本站的图片,通常我们都需要给图片地址加上防盗链。 其实51la提供了自己的icon,但这里提供的icon像素特别低,只有16*16,在我的导航站点上的显示就没有那么友好了 所以我才想把稍微清晰一点的icon图标下载下来 2.curl使用 参考 https://www.ruanyifeng.com/blog/2019/09/curl-reference.html 要避开这个403访问权限,需要做的就是给请求头给定一个referer字段,告诉51la的服务器,我是通过他自己的域名访问图标文件 1234curl \-H 'Referer: https://v6.51.la/' \https://v6-static.51.la/v6-static/202302161047/favicon.ico \-o...
【C++】thread|mutex|atomic|condition_variable
本篇博客,让我们来认识一下C++中的线程操作 所用编译器:vs2019 阅读本文前,建议先了解线程的概念 👉 线程概念 1.基本介绍 在不同的操作系统,windows、linux、mac上,都会对多线程操作提供自己的系统调用接口 为什么C++需要封装一个线程?直接用系统的接口不好吗? 在Linux文件博客中,已经谈过了这一点:对于C++、python、java这些跨平台的语言来说,如果直接用系统的接口,是可以实现对应操作的。但是,这样会导致代码只能在某一个特定平台,甚至是某一个版本的特定操作系统上才能正常运行,直接与跨平台的特性相违背。 解决的办法呢,就是对系统的接口套一个语言级别的软件层,封装系统的接口。并用条件编译的方式来识别不同的操作系统,已调用不同操作系统的系统接口,以实现跨平台性 2.thread类 https://legacy.cplusplus.com/reference/thread/thread/thread/ 2.1...
【网络】http(s)协议 | content-length详解 | 转载
本文通过一个线上实例,详细介绍http协议中的content-length字段。 前言 http协议是互联网中最重要的协议之一,虽然看上去很简单,但是实际中经常遇到问题,我们就已经遇到好几次了。有长连接相关的,有报文解析相关的。对http协议不能一知半解,必须透彻理解才行。 本文通过一个线上实例,详细介绍http协议中的content-length字段。 问题 我们的手机App在做更新时会从服务器上下载的一些资源,一般都是一些小文件,更新的代码差不多是下面这样的: 12345678910111213141516static void update() throws IOException { URL url = new URL("http://172.16.59.129:8000/update/test.so"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); if(conn.getResponseCode() == 200) { ...