记录一次NGINX的错误

问题复现 在网络中,发现css和js都正常加载了,但是在实际加载的网页中,只有front正常加载,css和js 大概就是这种效果(悲 我的nginx配置文件如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ```bash user nginx; worker_processes auto; error_log /folder/log/error.log; pid /var/run/nginx.pid; events { worker_connections 1024; } http{ server { listen 80; server_name test.example,com; location / { root /folder/nginx/html/dist; index index.html index.htm; } 寻求方法 权限问题? 一开始以为是静态文件static的权限问题,就在static文件夹下执行了chmod -R 775 * 正则表达式映射? 1 2 3 4 location ~ ^/(?<dir>[^/]+)/(?<file>[^/]+)$ { gzip on; alias /folder/nginx/html/dist/static/$dir/$file; } SO上的一个回答,据说在加入这个后正则表达式就能匹配到静态文件...

September 24, 2023 · 1 min · 99 words · LOTU$

Go学习

这里我使用的是大佬提供的Docker镜像,直接拉取即可使用,不需要配置Go环境。 1 2 3 4 5 6 7 #学习地址 https://hunterhug.github.io/goa.c/#/golang/README # 拉镜像 docker pull hunterhug/gotourzh # 后台运行 docker run -d -p 9999:9999 hunterhug/gotourzh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 //未导出的函数是小写,导出的函数是大写 ![](20240824153903.png) package main import "fmt" func add(x int, y int)int { return x + y } func main() { fmt.Println(add(89,64)) } x int , y int ==> x,y int 多值返回...

August 24, 2023 · 17 min · 3444 words · LOTU$

揭秘Docker架构: 通过Linux核心技术自建容器系统的实战教程

转载自:https://akashrajpurohit.com/blog/build-your-own-docker-with-linux-namespaces-cgroups-and-chroot-handson-guide/ 简介 容器化已经改变了软件开发和部署的世界。Docker是一个领先的容器化平台,利用Linux命名空间、cgroups和chroot提供强大的隔离、资源管理和安全性。 在这个实践指南中,我们将跳过理论部分(如果您想更深入了解这些主题,请查阅上面提供的链接),直接进入实际实现的步骤。 1 2 3 4 5 在我们深入使用命名空间、cgroups和chroot构建类似Docker的环境之前,有必要明确一点,本实践指南并不旨在替代Docker及其功能。 Docker拥有分层镜像、网络、容器编排和丰富的工具等功能,使其成为一种功能强大且多用途的应用部署解决方案。 本指南的目的是通过从零开始构建一个基本的容器环境,提供对构成Docker核心的基础技术的教育性探索。通过这样的实践,我们旨在深入理解这些底层技术如何协同工作,实现容器化。 让我们开始构建Docker Step 1: 设置命名空间 为了创建一个隔离的环境,我们首先设置一个新的命名空间。我们使用unshare命令,指定不同的命名空间(–uts,–pid,–net,–mount和–ipc),为我们的容器提供独立的系统标识和资源实例。 1 unshare --uts --pid --net --mount --ipc --fork Step 2: 配置cgroups Cgroups(控制组)帮助管理资源分配,并控制我们容器化进程对系统资源的使用。 我们为容器创建一个新的cgroup,并分配CPU配额限制以限制其资源使用量。 1 2 3 4 mkdir /sys/fs/cgroup/cpu/container1 echo 100000 > /sys/fs/cgroup/cpu/container1/cpu.cfs_quota_us echo 0 > /sys/fs/cgroup/cpu/container1/tasks echo $$ > /sys/fs/cgroup/cpu/container1/tasks 在第三行,我们将值0写入/sys/fs/cgroup/cpu/container1/目录下的tasks文件。tasks文件用于控制哪些进程分配给特定的cgroup。 通过向该文件写入0,我们将任何先前分配给cgroup的进程移出。这确保了最初没有进程分配给container1 cgroup。 在第四行,我们将$$的值写入/sys/fs/cgroup/cpu/container1/目录下的tasks文件。 这确保由Shell或脚本生成的任何后续子进程也将成为container1cgroup的一部分,并且它们的资源使用将受到指定的CPU配额限制的限制。 Step 3: 构建根文件系统 为了创建我们的容器文件系统,我们使用debootstrap在一个名为"ubuntu-rootfs"的目录中设置一个最小化的Ubuntu环境。这将作为我们容器的根文件系统。 1 debootstrap focal ./ubuntu-rootfs http://archive.ubuntu.com/ubuntu/ Step 4: 挂载和进入容器的chroot环境 我们在容器的根文件系统中挂载了必要的文件系统,如/proc、/sys和/dev。然后,我们使用chroot命令将根目录更改为我们容器的文件系统。 1 2 3 4 mount -t proc none ....

July 2, 2023 · 1 min · 119 words · LOTU$

AutoGPT体验

AutoGPT体验 安装AutoGPT 我使用虚拟环境来创建这个项目,所以首先要激活虚拟环境,然后安装AutoGPT,安装完成后,就可以使用了。 在cmd输入下面内容 1 2 3 4 pip install virtualenv #安装虚拟环境 virtualenv autogpt #创建虚拟环境 cd autogpt #进入虚拟环境 .\Scripts\activate #激活虚拟环境 常用命令 1 2 deactivate #退出虚拟环境 activate #进入虚拟环境 删除虚拟环境 1 rmdir autogpt 官方推荐python3.10以上版本,我使用的是python3.11.3版本, 在这里我使用的是命令 1 2 virtualenv autogpt --python=python3.11.3 #创建虚拟环境,指定python版本为3.11.3 需要注意,如果你的电脑上没有3.11.3版本的python,那么你需要先安装3.11.3版本的python,然后再创建虚拟环境。 接下来,安装AutoGPT 在cmd输入下面内容 1 git clone -b stable --single-branch https://github.com/Significant-Gravitas/Auto-GPT.git 安装依赖 1 pip install -r requirements.txt 接下来我们要对AutoGPT进行一些配置,在文件内有.env.example文件,我们需要将其复制一份,并将其命名为.env 在.env文件内找到OPENAI_API_KEY,将其改为你的OpenAI API Key,如果没有的话,可以在OpenAI官网申请一个,申请成功后,将其填入即可。 运行AutoGPT 在cmd输入下面内容 1 python -m autogpt 就可以启动Autogpt了 但是,经过了我一晚上的测试,我发现这个AutoGPT还存在许多不足 第一次尝试 在我的第一次测试中,我请求他给我用java写个下棋游戏,在一番搜索之后,他卡在了配置java环境这一步 他一直对甲骨文发出请求,企图下载jdk,但是因为没有甲骨文账号,被甲骨文官网一直屏蔽, 导致了死循环 更令人哭笑不得的是,我的电脑上早早就装好了jdk...

May 31, 2023 · 1 min · 79 words · LOTU$

Flask学习

Flask学习 1.1 配置环境与访问 配置环境 1 2 3 cdvirtualenv 进入虚拟环境 rmvirtualenv 删除虚拟环境 lsvittualenv 列出虚拟环境 自己安装: 进入终端中进入虚拟环境—–> 1 2 3 pip list pip install pymysql pip install flask==1.0(卸载原来的版本,安装指明的版本) 项目结构介绍: 1 2 3 4 --项目名: |---static (静态)js css |---templates(模板) |--app,py(运行引启动) 新建Flask项目 1 2 3 4 5 6 7 8 9 10 11 12 from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): # put application's code here return '哈哈哈' if __name__ == '__main__': app....

May 6, 2023 · 5 min · 1049 words · LOTU$