Hello World
你好,世界![Hello world!]
—–2022年3月18日00:28:02
Todo:
SqlSugar ORM - BlogCore
根据Models生成表
根据表生成Models
生成三层
文章模板Page Front-matter123456789101112131415--- title #【必需】页面标题 date #【必需】页面创建日期 type #【必需】标籤、分类和友情链接三个页面需要配置 updated #【可选】页面更新日期 description #【可选】页面描述 keywords #【可选】页面关键字 comments #【可选】显示页面评论模块(默认 true) top_img #【可选】页面顶部图片 mathjax 【#可选】显示mathjax(当设置mathjax的per_page: false时,才需要配置,默认 false) katex #【可选】显示katex(当设置katex的per_page: false时,才需要配置,默认 false) aside #【可选】显示侧边栏 (默认 t ...
Net6项目发布至阿里云镜像
创建发布
依次点击
发布 -> 新建 -> Doker容器注册表 -> 下一步
其他Docker容器注册表 -> 下一步
填写注册信息
说明:注册表信息
实例公网地址/空间名称
用户名
右上角头像会出现信息
密码
密码为开通服务时设置的密码
也可以在凭证中修改
编辑镜像标签
自动生成 或者 自定义(自定义为当前时间)
点击发布
成功提示
C# smtp邮件发送测试
123456789101112131415161718192021222324252627282930313233343536373839404142434445/// <summary> /// 通过客户端发送邮件信息(如果发件人使用QQ邮箱,那么对应的smtpService需改成smtp.qq.com) /// 前提:发件人需要到邮箱中启用第三方客户端服务,位置:设置-->账户-->POP3/SMTP服务 -->开启,获取邮箱授权码 /// </summary> /// <param name="senderEmail">发件人邮箱</param> /// <param name="authCode">发件人邮箱授权码</param> /// <param name="receiverEmail">收件人邮箱</param> /// <param ...
ubuntu修改ip地址
ubuntu修改ip地址1234567891011121314151617vi /etc/netplan/00-installer-config.yaml## 修改以下内容 ############################################# This is the network config written by 'subiquity'network: ethernets: ens160: addresses: [192.168.33.117/24] dhcp4: false optional: true gateway4: 192.168.33.1 # dhcp4: true nameservers: addresses: [192.168.33.1,114.114.114.114] version: 2
修改完成后,保存退出,然后输入命令重启网卡
1netplan apply
1234567891011# ...
使用阿里云创建镜像存储
创建仓库进入主页:容器镜像服务
参考文档:https://blog.csdn.net/nuptaxin/article/details/124008353
选择个人实例
创建个人版
创建完成,点击设置Registry登录密码
创建命名空间(全网唯一)
创建镜像仓库
选择本地仓库
创建成功
推送
参考仓储基本信息中操作指南
登录1docker login --username=ailithemonster registry.cn-hangzhou.aliyuncs.com
推送123$ docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/thmonster/thmonster_box:[镜像版本号]$ docker push registry.cn-hangzhou.aliyuncs.com/thmonster/thmonster_box:[镜像版本号]
[镜像版本号] – 自定义一个名称
拉取
私有仓储拉取前需要登录
[镜像版本号] – 可以在镜像版本中查看
1$ docker pull registry.cn-h ...
docker-rootless
参考
blog: https://www.cnblogs.com/cocoalatte/p/15919366.html
zhihu: https://zhuanlan.zhihu.com/p/496021016
前景提要
客户要求进程不要使用root用户,好在咱们的东西都跑在docker上,这样岂不是建个用户加个权限启动docker就解决了么,但是经过了解,docker的非root用户模式还有点费劲,所以记录一下
创建用户
使用管理员 创建一个名为dockeruser 的用户
123sudo -isudo useradd dockeruser -d /home/dockeruser -m
管理员配置密码
1sudo passwd dockeruser
管理员解决远程登录
1vim /etc/passwd
修改以下内容
123dockeruser:x:1001:1001::/home/dockeruser:/bin/sh# 替换为 ↓↓↓↓↓↓↓dockeruser:x:1001:1001::/home/dockeruser:/bin/bash
开始安装
管理 ...
docker和docker-dompose安装
docker安装 安装Docker:新装的Ubuntu系统,需要安装Docker之后,才能使用Dockerfile,已经安装Docker的系统可跳过该步。
Docker安装参考步骤:https://developer.aliyun.com/article/762674
*备注:Docker安装后,一般需要管理员权限,因此运行Docker命令需要加sudo,也可以根据文章的说明修改为非管理员权限运行Docker。
Docker主要安装过程,依次键入以下命令,并等待安装结束:
首先,更新软件包索引,并且安装必要的依赖软件,来添加一个新的 HTTPS 软件源:
12sudo apt updatesudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
使用下面的 curl 导入源仓库的 GPG key:
1curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt- ...
EF提升效率,Z. EntityFramework
EF大数据批量处理-效率提升使用Nuget安装:Z.EntityFramework.Extensions
破解脱壳
找到 Z.EntityFramework.Extensions.EFCore 的Nuget包地址(右键属性可以查看),我的在 C:\Users\Administrator\.nuget\packages\z.entityframework.extensions.efcore\2.6.11\lib\netstandard2.0
下载de4dot:https://github.com/0xd4d/de4dot (文件脱壳)windows下载地址:https://ci.appveyor.com/project/0xd4d/de4dot/branch/master/artifacts下载:de4dot-net35
解压后将 Z.EntityFramework.Extensions.EFCore.dll 拷贝到 de4dot-net35 解压目录,然后执行cmd命令
de4dot.exe Z.EntityFramework.Extensions.EFCore.dll
它会 ...
Iptable 详解!
Iptable
iptables [-t table] [COMMAND] [chain] [CONDITION] [-j ACTION]
iptables [-t 表名] [命令选项][链名条件匹配] [-j 目标动作或跳转]
12345678910-t table 是指'操作的表',filter、nat、mangle或raw,'默认使用filter'COMMAND '子命令',定义'对规则的管理',PREROUTING、POSTROUTING、OUTPUTchain 指明'链路'CONDITION 匹配的'条件或标准',用于指定对符合什么样 条件的数据包进行处理;ACTION 匹配后'操作动作',用于指定数据包的处理方式(比如允许通过、拒绝、丢弃、跳转(Jump)给其它链处理。
-t table12345678910111213141516171819#------------------ ...
Identity Service 4 APi 获取用户信息
Identity Service 4 APi 获取用户信息在构造Asp.Net等基于.Net Framework等应用时,Web Api或者其它后台往往与前台处于同一进程,一般通过Session或者其它方式获取用户信息。采用bearer JWT认证的Web Api与被调用的前端处于不同的进程甚至不同的服务器,因此不能使用Session等获取用户信息。用户信息通过JWT传递到API,被平台填充到User.Claims中,可以直接获取,代码如下:
from c in User.Claims select new { c.Type, c.Value }
1234567891011121314151617181920using Microsoft.AspNetCore.Authorization;using Microsoft.AspNetCore.Mvc;using System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;namespace Api.Con ...