每周学习笔记(第三周)

一、C#发送钉钉消息

1、官方文档

官方文档

2、注意事项

  1. 钉钉官方消息结构
{
     "msgtype": "text",
     "text": {
         "content": "我就是我, @150XXXXXXXX 是不一样的烟火"
     },
     "at": {
         "atMobiles": [
             "150XXXXXXXX"
         ], 
         "isAtAll": false
     }
 }
  1. 官方消息结构字段都是小写,C#代码中必须也是
/// <summary>
/// 钉钉消息结构体
/// </summary>
public class DingDingTalk
{
    public string msgtype { get; set; }

    public DingText text { get; set; }
}

/// <summary>
/// 钉钉文本消息内容
/// </summary>
public class DingText
{
    public string content { get; set; }
}

二、docker监控

1、普罗米修斯

1、安装

直通车

2、备注

  1. 使用有一定的难度,先试试其他的

2、weave scope

1、安装

直通车

2、备注

  1. 我用的阿里云,weave scope安装好后返回的地址不是外网ip,需要将返回的ip改为实际的外网ip。

三、Docker部署Django

1、参考文档

参考文档1

2.、踩坑

1、用uwsgi启动Django

  1. uwsgi启动后,用curl模拟请求127.0.0.1:8025,一直提示curl: (52) Empty reply from server
  2. 原因链接
  3. uwsgi.ini中的配置连接方式如果时socket,就会提示整个,socket只能配合nginx访问,如果想用curl访问,连接方式改为http

2、Nginx代理(本地)

  1. 场景:服务本身已经启动,在外网也已经能访问127.0.0.1:8025,我在Nginx配置文件配置时,配置如下:配置启动时,提示地址已经在使用(Address already in use
server {
	listen 8025;
	server_name localhost;
	location / {
		proxy_pass http://127.0.0.1:8025;
	}
}
  1. 正确用法(我理解的):Nginx代理服务时,服务的访问只能从Nginx提供的入口进入,服务自身的入口应该是要屏蔽的。这样才能起到Nginx代理的作用。比如我的Django程序,设置为只允许Nginx部署的站点Ip才能访问
  2. Nginx相关
  • 配置文件目录:/usr/local/nginx
  • 执行目录:/usr/local/nginx/sbin
  • 检查配置文件命令:./nginx -t
  • 重启Nginx命令:./nginx -s reload
  • 停止Nginx服务:./nginx -s stop

3、Nginx代理(docker)

  1. 场景:Nginx放到容器以后,就无法直接代理其他的地址了,因为它只在自己的容器当中。
  2. 每个容器在docker中是有自己的IP的,这个可以通过docker inspect 容器ID,或者直接通过Weave Scope查看。
  3. nginx相关
    命令不用指定目录执行,根目录下即可执行
    配置目录:/etc/nginx
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值