清朝云资源网

作者: 清朝云

  • Docker 安装 wallabag 稍后阅读管理


    共计 1114 个字符,预计需要花费 3 分钟才能阅读完成。

    简介

    wallabag 是一款开源的网络书签、稍后阅读工具,需要付费使用官方提供的服务,或自托管。它允许你抓取网络上的内容并全文本地离线保存(超过 1400 个抓取规则),再通过舒适的方式稍后阅读。支持 RSS 可以让你在最喜欢的 RSS 阅读器上阅读自己保存的文章,拥有中文界面以及跨平台客户端,还能设置自动标签规则,非常完善的项目。

    安装

    这一步是为了将容器里面的数据拷贝到宿主机,否则直接运行会报错。

    mkdir -p /home/docker/wallabag/ && 
    docker run -d --name wallabag wallabag/wallabag &&
    docker cp wallabag:/var/www/wallabag/data /home/docker/wallabag/ &&
    docker rm -f wallabag && \
    chmod -R 777 /home/docker/wallabag/data/db

    运行安装命令。

    docker run -d \
    --name wallabag \
    -p 8080:80 \
    -e SYMFONY__ENV__DOMAIN_NAME=http://localhost:8080 \
    -e SYMFONY__ENV__LOCALE=zh \
    -v /home/docker/wallabag/data:/var/www/wallabag/data \
    -v /home/docker/wallabag/images:/var/www/wallabag/web/assets/images \
    wallabag/wallabag

    这里的 SYMFONY__ENV__DOMAIN_NAME 是服务器地址+端口号,必须设置正确,否则部无法正常加载,SYMFONY__ENV__LOCALE 设置地区即设置语言,不指定也可以通过配置更改语言。而映射目录的 data 目录则是数据目录,images 是图片缓存目录,因为 wallabag 支持将图片保存在本地。

    访问服务地址,使用默认账号密码 wallabag/wallabag 进行登录。

    Docker 安装 wallabag 稍后阅读管理

    />

    进入首页,清朝云这里由于是之前保存过链接,所以会展示未读的稍后阅读。

    Docker 安装 wallabag 稍后阅读管理

    />

    另外,还可以支持点击设置-订阅源,创建 rss 令牌,创建令牌会出现未读、收藏、存档和所有四个 rss 链接,可以在自己的 rss 阅读器上添加,完美解决藏而不读的问题。

    Docker 安装 wallabag 稍后阅读管理

    />

    比如清朝云在 freshrss 添加未读链接,当有稍后阅读保存时就会出现 rss 推送。如果你也想搭建 rss 阅读器,参考 Docker 搭建 Rss 阅读器 freshrss

    Docker 安装 wallabag 稍后阅读管理

    />

    另外,wallabag 还支持浏览器书签、安卓客户端、IOS等等,这里就不过多介绍了,wallabag 官网文档链接:https://doc.wallabag.org/

    提醒:本文发布于399天前,文中所关联的信息可能已发生改变,请知悉!

    Tips:清朝云网络工作室

  • 10月30日,星期三, 每天60秒读懂全世界!

    百度热搜新闻

    新闻来源:百度热搜榜

    1. 小米SU7Ultra预售价81.49万元 29日晚,雷军公布小米SU7Ultra量产车预售价——81.49万元,22:30开启预订,将于2025年3月正式发布。

    2. 60万网络水军为商家刷单47亿元

    3. 神十九发射瞄准30日4时27分

    4. 直播:神舟十九号发射

    5. 有研究发现地球漏水了 美国公布研究发现,水渗入地球深处达2900公里形成新薄层。虽对日常生活无直接影响,但提醒人们更深刻认识并珍惜地球。

    6. 中央第四轮巡视对象公布 经党中央批准,二十届中央第四轮巡视将对中央宣传部(中央精神文明建设办公室)、中央统战部等34家单位党组织开展常规巡视。

    7. 成龙悼念李丽丽

    8. “种完麦子我就往南走” 近日,大冰直播连线到一位60岁的奶奶,奶奶表示想看看祖国的大好河山,“种完麦子我就往南走”,不管何时,出发的决心永远不晚。

    9. 贪8.13亿!孙志刚被判死缓 10月29日,天津市第二中级人民法院公开宣判孙志刚受贿案,以受贿罪判处孙志刚死刑,缓期二年执行;减为无期徒刑后终身监禁。

    10. 预祝美国两名航天员安全归来 10月29日,在神舟十九号载人飞行任务新闻发布会上,发言人表示:航天员生命安全是重中之重,预祝美国两名航天员安全归来。

    —- 百度热搜新闻 End —-

    知乎新闻

    新闻来源:知乎日榜

    标题: 长江的年龄有多大?
    链接: https://daily.zhihu.com/story/9776491
    ———————-
    标题: 如何理解天文学中的「潮汐锁定」现象,对天体会有什么影响?
    链接: https://daily.zhihu.com/story/9776492
    ———————-
    标题: 既然说鲸是从陆地进化到海里,那么鲸在陆地的祖先是谁?有没有发现鲸从陆地到海洋的过渡状态?
    链接: https://daily.zhihu.com/story/9776514
    ———————-

    —- 知乎新闻 End —-

    IT之家新闻

    新闻来源:ITHome之家科技新闻

    标题: 4499 元起小米 15 手机正式发布:骁龙 8 至尊版、12GB 内存起步、超声波指纹
    发布时间: 2024-10-29T20:17:24.207
    新闻简介: 小米 15 手机今日正式发布,12GB + 256GB 起步,定价 4499 元起。#小米15##小米澎湃OS2##小米SU7Ultra##小米15今日发布#
    ———————-
    标题: 5299 元起的小米 15 Pro 手机正式发布:首发骁龙 8 至尊版、3.5km 无网通信
    发布时间: 2024-10-29T20:56:36.193
    新闻简介: 5299 元起,小米 15 Pro 手机正式发布#小米15##小米15价格##小米15颜色##小米澎湃OS2##小米SU7Ultra##小米15今日发布# #小米发布会#
    ———————-
    标题: 6 分 46 秒 874,小米 SU7 Ultra 原型车成纽北全球最速四门车
    发布时间: 2024-10-29T11:05:12.7
    新闻简介: 小米汽车官方刚刚公布了小米 SU7 Ultra 原型车首次征战纽北的官方认证圈速:6 分 46 秒 874,成为纽北全球最速四门车。
    ———————-
    标题: 预售价 81.49 万元,“地表最快四门量产车”小米 SU7 Ultra 量产车开启小定
    发布时间: 2024-10-29T22:17:15.947
    新闻简介: 小米 SU7 Ultra 量产车预售价 81.49 万元。该车今晚开启小定,2025 年 3 月正式发布。#小米发布会##小米SU7 Ultra#
    ———————-
    标题: 小米 15 手机亮银版公布,今晚 7 点发布
    发布时间: 2024-10-29T14:49:59.1
    新闻简介: 小米曾在小米 6、小米 10 至尊纪念版手机上推出亮银探索版手机。
    ———————-
    标题: 苏宁文案翻车“买家电上京东”,后者幽默回应
    发布时间: 2024-10-29T12:32:20.197
    新闻简介: “苏宁易购家电”官方微博账号近日出现文案“乌龙”,发文称“11.11 买家电上京东”。对此,“京东家电”官方微博昨日幽默回应“感谢苏宁小伙伴对京东的支持”。#苏宁双十一文案翻车#
    ———————-
    标题: 小米 15 Pro 手机 24 期免息开售,赠 1396 元尊享服务
    发布时间: 2024-10-29T21:04:20.23
    新闻简介: 小米 15 Pro 年度旗舰手机现已放出抢购链接,目前京东页面显示 2024-10-29 21:30 开抢
    ———————-
    标题: 苹果史上最小电脑 2024 款 Mac mini 正式发布:搭载 M4 / Pro 芯片 + 16GB 起步内存,4499 元起
    发布时间: 2024-10-29T23:01:13.667
    新闻简介: 苹果史上最小电脑:2024 款 Mac mini 正式发布,M4 / M4 Pro 芯片、最高 64GB 内存。
    ———————-
    标题: 国庆期间被 AI 雷军“骂了 7 天”,雷军本人呼吁网友不要再玩
    发布时间: 2024-10-29T12:56:24.893
    新闻简介: 在今年国庆假期期间,一些网友利用 AI 技术克隆雷军的声音,借此吐槽不文明行为或表达对他人的不满,有网友戏称“被 AI 雷军追着骂了整个假期”。#雷军再回应雷军AI配音#
    ———————-
    标题: 消息称华为 Mate 70 系列手机 11 月上市,部分零部件投产数较 Mate 60 同期增加 50%
    发布时间: 2024-10-29T11:18:42.973
    新闻简介: 据科创板日报报道,从供应链相关人士处获悉,目前华为 Mate 70 系列正抓紧投产,为 11 月上市做准备。11 月部分零部件的计划投产数相较 Mate 60 同期增加约 50%。
    ———————-
    标题: 多位博主就“vivo X200 系列手机退货率 44%”言论发文致歉
    发布时间: 2024-10-29T09:10:22.213
    新闻简介: 近日网络平台流传“vivo X200 系列手机退货率 44%”的消息,目前多位通过认证的原创视频博主、科技博主就发表该言论进行道歉。
    ———————-
    标题: 小米 15 钻石限定版发布:鳄鱼皮纹理后盖、边框镶嵌钻石,5999 元
    发布时间: 2024-10-29T20:28:35.027
    新闻简介: 小米 15 钻石限定版有三种颜色,分别为冰川白、橙色、大象灰。#小米15##小米 15 钻石限定版#
    ———————-

    —- IT之家新闻 End —-

  • 两种方式解决 Gitlab 导入非标准端口项目报错


    共计 653 个字符,预计需要花费 2 分钟才能阅读完成。

    自建的 gitlab 迁移的时候,准备用导入项目的方式将项目迁移,但是在导入项目过程中遇到了如下错误:

    Import url is blocked: Only allowed ports are 80, 443, and any over 1024

    这个报错的意思是,只允许 80、443 和其他大于 1024 的端口,对于这个有两种方式解决。

    1. 方法1

    首先找到 gitlab 的配置文件 url_blocker.rb。

    如果你是 docker 运行,那么运行如下命令:

    # 进入容器
    docker exec -it gitlab bash
    
    # 修改配置文件
    vi /opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/url_blocker.rb

    然后搜索 1024,找到 return if port >= 1024 代码,修改为 return if port >= 0 ,保存然后重启。

    # 重启
    gitlab-ctl reconfigure && gitlab-ctl restart
    1. 方法2

    同样是进入容器,编辑 url_blocker.rb 文件。

    # 进入容器
    docker exec -it gitlab bash
    
    # 修改配置文件
    vi /opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/url_blocker.rb

    找到如下代码:

    def validate!(
            url,
            ports: [xx],
            ...
    )

    将自己的端口添加到 ports 数组即可,保存然后重启。

    # 重启
    gitlab-ctl reconfigure && gitlab-ctl restart

    提醒:本文发布于398天前,文中所关联的信息可能已发生改变,请知悉!

    Tips:清朝云网络工作室

  • Docker 使用两种工具测试网站并发


    共计 1395 个字符,预计需要花费 4 分钟才能阅读完成。

    1. ab工具

    ab 代表 ApacheBench,是一个用于测试 HTTP 服务器性能的工具。它是 Apache HTTP 服务器的一部分,可以模拟并发请求并测量服务器的响应时间和吞吐量。

    相关参数:

    • -c: 并发连接数,即同时发送的请求数量。例如,-c 100表示同时发送100个请求。
    • -n: 总请求数量,即发送的总请求数量。例如,-n 1000表示发送1000个请求。
    • -t: 测试时间,即测试的持续时间。例如,-t 60表示测试持续60秒。
    • -k: 启用HTTP KeepAlive功能,即在同一连接上发送多个请求。默认情况下,每个请求都会创建一个新的连接。
    • -H: 添加自定义请求头。例如,-H "User-Agent: Mozilla/5.0"表示在请求中添加自定义的User-Agent头。
    • -p: 指定包含POST请求数据的文件。例如,-p data.txt表示使用data.txt文件中的数据发送POST请求。
    • -T: 指定Content-Type头。例如,-T "application/json"表示使用application/json作为Content-Type头。
    • -A: 添加基本身份验证。例如,-A "username:password"表示使用指定的用户名和密码进行基本身份验证。
    • -C: 添加Cookie。例如,-C "sessionid=1234567890"表示在请求中添加指定的Cookie。

    docker 使用方式:

    docker run --rm -it cucker/webstress ab -n 1000 -c 1000  https://www.baidu.com/

    代表对 www.baidu.com 发起总请求为 1000,并发为 1000 的请求的测试,一定要加 /,否则提示格式不正确。

    Docker 使用两种工具测试网站并发

    />

    2. hey 工具

    hey 是一个用 Go 语言编写的轻量级 HTTP 负载测试工具,专注于测试服务器的并发能力。它可以模拟大量的并发请求,并测量服务器的响应时间和吞吐量。

    相关参数:

    • -n: 总请求数量,即发送的总请求数量。例如,-n 1000表示发送1000个请求。
    • -c: 并发连接数,即同时发送的请求数量。例如,-c 100表示同时发送100个请求。
    • -q: 静默模式,不输出详细的请求和响应信息。
    • -o: 输出结果到指定文件。例如,-o result.txt表示将结果输出到result.txt文件中。
    • -m: HTTP方法,指定请求使用的HTTP方法。例如,-m POST表示使用POST方法发送请求。
    • -H: 添加自定义请求头。例如,-H "User-Agent: Mozilla/5.0"表示在请求中添加自定义的User-Agent头。
    • -d: POST请求数据,指定请求的POST数据。例如,-d "key1=value1&key2=value2"表示使用指定的POST数据发送请求。
    • -t: 测试时间,即测试的持续时间。例如,-t 60s表示测试持续60秒。
    • -a: 添加基本身份验证。例如,-a "username:password"表示使用指定的用户名和密码进行基本身份验证。
    • -host: 指定请求的主机名。例如,-host example.com表示请求example.com网站。

    docker 使用方式:

    docker run --rm hausen1012/hey -n 1000 -c 1000 https://www.baidu.com

    同样代表对 www.baidu.com 发起总请求为 1000,并发为 1000 的请求的测试。

    Docker 使用两种工具测试网站并发

    提醒:本文发布于398天前,文中所关联的信息可能已发生改变,请知悉!

    />

    Tips:清朝云网络工作室

  • Containerd 的安装和基本使用


    共计 4724 个字符,预计需要花费 12 分钟才能阅读完成。

    一、简介

    containerd 是容器虚拟化技术,从 docker 中剥离出来,形成开放容器接口(OCI)标准的一部分。

    docker 对容器的管理和操作基本都是通过 containerd 完成的。Containerd 是一个工业级标准的容器运行时,它强调简单性、健壮性和可移植性。Containerd 可以在宿主机中管理完整的容器生命周期:容器镜像的传输和存储、容器的执行和管理、存储和网络等。详细点说,Containerd 负责干下面这些事情:

    • 管理容器的生命周期(从创建容器到销毁容器)

    • 拉取/推送容器镜像

    • 存储管理(管理镜像及容器数据的存储)

    • 调用 runc 运行容器(与 runc 等容器运行时交互)

    • 管理容器网络接口及网络

    注意:Containerd 被设计成嵌入到一个更大的系统中,而不是直接由开发人员或终端用户使用

    docker 安装后 containerd 默认已安装,containerd 包含如下命令组件:

    • containerd:高性能容器运行时。

    • ctr:containerd 的命令行客户端。

    • runc:运行容器的命令行工具。

    docker、containerd、docker-shim、runC 关系

    Containerd 的安装和基本使用

    />

    docker:docker 本身而言,包括了 docker client 和 dockerd,dockerd 实属是对容器相关操作的 api 的最上层封装,直接面向操作用户。

    containerd:dockerd 实际真实调用的还是 containerd 的 api 接口(rpc 方式实现),containerd 是 dockerd 和 runC 之间的一个中间交流组件。

    docker-shim:一个真实运行容器的载体,每启动一个容器都会起一个新的 docker-shim 的进程。它通过指定三个参数:容器 ID、boundle 目录(containerd 对应某个容器生成目录)、运行时二进制(默认是 runC)来调用 runC 的 api 创建一个容器。

    runC:一个命令行工具端,根据 OCI 的标准来创建和运行容器。

    一、安装

    搜索了 containerd 的相关安装教程,对于自己来说还是有点迷糊,决定自己整一遍在线和离线安装 containerd。

    1. 离线安装

    1.1 下载可执行文件

    访问 containerd GitHub 仓库的 releases 页面 下载对应系统版本的 containerd 文件。

    containerd 的运行是需要调用 runc 的,但是 containerd-x.x.x-linux-amd64.tar.gz 不包含 runc,所以需要直接下载完整版本。cri-containerd-x.x.x-linux-amd64.tar.gz,这个版本包含了所有 Kubernetes 需要的二进制文件。

    # 下载
    wget https://github.com/containerd/containerd/releases/download/v1.7.6/cri-containerd-1.7.6-linux-amd64.tar.gz
    
    # 直接将压缩包解压到系统的各个目录中
    tar -C / -zxvf cri-containerd-1.7.6-linux-amd64.tar.gz
    
    # 追加环境变量并立即生效
    export PATH=$PATH:/usr/local/bin:/usr/local/sbin && source ~/.bashrc

    可执行文件有 containerdctr 等文件,ctrcontainerd 提供的命令行工具,用于与 containerd 交互和管理容器运行时。通过 ctr 工具,你可以执行各种操作,如查看容器列表、启动和停止容器、管理镜像、查看容器日志等。

    此时只是下载了二进制文件,还没有启动 containerd,所以使用 ctr image ls 命令会提示报错。

    1.2 配置并启动

    首先生成 containerd 运行所需要的配置文件,方便后期修改。

    mkdir -p /etc/containerd/ && containerd config default > /etc/containerd/config.toml

    启动 containerd 并设置自启动,默认刚刚解压的包是包含 /usr/lib/systemd/system/containerd.service 文件的。

    systemctl start containerd && systemctl enable containerd 

    如果上面的命令报错,可以使用 find / -name *containerd.service* 命令查找一下,实在不行可以自己编写 containerd 的系统管理服务,编写后执行上面的命令即可。

    cat > /usr/lib/systemd/system/containerd.service <<EOF
    [Unit]
    Description=containerd container runtime
    Documentation=https://containerd.io
    After=network.target
    
    [Service]
    ExecStartPre=/sbin/modprobe overlay
    ExecStart=/usr/bin/containerd --config /etc/containerd/config.toml
    Restart=always
    RestartSec=5
    LimitNOFILE=infinity
    
    [Install]
    WantedBy=multi-user.target
    EOF

    此时就可以执行 ctr image ls 命令。

    2. 在线安装

    2.1 安装

    在线安装就比较简单了,只要配置好仓库进行安装即可,并且不用手动创建 services 文件。

    # 安装 yum 软件包管理器,有可能还需要安装 device-mapper-persistent-data lvm2,这是 devicemapper 驱动依赖的
    yum install -y yum-util
    
    # 配置 yum 源
    # 官方源 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
    # 安装
    yum install containerd -y

    运行上述命令,containerd 就安装好了。

    2.2 启动

    如果需要进行配置,直接编辑 /etc/containerd/config.toml 文件即可,因为这个文件已经自动生成好了。

    并且 /usr/lib/systemd/system/containerd.service 服务管理文件也自动生成了,只需要启动并配置自启动即可。

    systemctl start containerd && systemctl enable containerd 

    此时就可以使用 ctr image ls 命令查看镜像了。

    当使用 runc 作为容器运行时时,默认的 sandbox_image 将是 runc 运行时所依赖的基础镜像。可以编辑 /etc/containerd/config.toml,替换 containerd 默认的 sand_box 镜像。sandbox_image = “registry.aliyuncs.com/google_containers/pause:3.2”

    二、使用

    1 查看版本

    ctr version

    2 镜像相关

    2.1 查看镜像

    ctr image list
    # ctr i list

    2.2 下载镜像

    ctr image pull docker.io/library/nginx:latest
    # ctr i pull docker.io/library/nginx:latest

    这里和 docker 的使用方式不同,docker.io/library/nginx:latest 一定要写全。

    2.3 删除镜像

    ctr images remove docker.io/library/nginx:latest

    2.4 修改标签

    ctr image tag docker.io/library/nginx:latest docker.io/library/nginx:v1

    2.5 导出镜像

    ctr image export nginx.tar docker.io/library/nginx:latest

    2.6 导入镜像

    ctr image import nginx.tar

    导入镜像可能会出现类似于 ctr: content digest sha256:xxxxxx not found 错误,根据网上的解决方案,拉取镜像、导出镜像时,都加上–all-platforms 即可。

    3 容器相关

    3.1 查看容器

    ctr containers list
    # ctr c list

    3.2 创建容器

    ctr run -d \
    --net-host \
    --mount type=bind,src=/home/docker/nginx/logs,dst=/var/log/nginx,options=rbind:rw \
    --privileged \
    docker.io/library/nginx:latest nginx nginx -g "daemon off;"

    可能报错出现如下报错:

    ctr: failed to create shim task: OCI runtime create failed: unable to retrieve OCI runtime error (open /run/containerd/io.containerd.runtime.v2.task/default/nginx/log.json: no such file or directory): runc did not terminate successfully: exit status 127: unknown

    使用 runc -version 命令排查,是 libseccomp 版本太旧了,containerd 需要 2.4 版本,而本机是 2.3。需要去 https://rpmfind.net/linux/rpm2html/search.php?query=libseccomp 下载高版本的 libseccomp。

    # 查询版本
    sudo rpm -qa | grep libseccomp
    # 卸载
    rpm -e libseccomp-2.3.1-4.el7.x86_64 --nodeps
    #  安装新版本
    rpm -ivh libseccomp-2.5.1-1.el8.x86_64.rpm

    再次运行 ctr run命令即可,注意这里不支持 docker 中的 --restart,并且 --rm-d 不能同时使用,绑定需要 --mount 而不能用 -v

    可以看见出现了两次 nginx,第一个 nginx 是容器名,第二个是容器内的命令。

    3.3 删除容器

    ctr containers remove nginx

    4 任务相关

    4.1 查看运行的任务

    这个命令相当于 docker ps

    ctr task ls

    4.2 进入容器

    ctr task exec -t --exec-id 1 nginx /bin/bash

    --exec-id 必须指定,可以是任意一个数字,nginx 为容器 id。

    4.3 暂停任务

    相当于 docker stop

    ctr task pause nginx
    # 可使用 ctr task ls 查看状态

    4.4 恢复任务

    ctr task resume nginx

    4.5 杀死任务

    ctr task kill nginx

    杀死正在运行的任务,暂停的任务不会杀死。

    4.5 杀死任务

    ctr task kill nginx

    4.6 删除任务

    ctr task rm nginx

    5 命名空间

    containerd 中还有命名空间的概念。

    5.1 查看命名空间

    ctr ns ls

    5.3 创建命名空间

    ctr ns create test

    5.3 删除命名空间

    ctr ns rm test

    提醒:本文发布于397天前,文中所关联的信息可能已发生改变,请知悉!

    Tips:清朝云网络工作室

  • 10月29日,星期二, 每天60秒读懂全世界!

    百度热搜新闻

    新闻来源:百度热搜榜

    1. 一系列生育支持措施来了 近日,国务院印发一系列生育支持措施,从强化生育服务支持,加强育幼服务体系建设,强化教育、住房、就业等方面营造良好生育氛围。

    2. 警方强烈建议关闭FaceTime

    3. 当火车与秋天同框每一张都是壁纸 一年好景君须记,最是橙黄橘绿时,三秦大地五谷丰登,遍地锦绣,年丰时稔,喜上眉梢,快坐上火车一起去看看吧!

    4. 印军撤出中印争议边界地区

    5. 印尼巨贪家中查出近万亿现金

    6. 陈建文已任人民日报社总编辑 人民日报社官网“领导介绍”栏目信息更新显示,陈建文已任人民日报社总编辑。此前,陈建文任广东省委宣传部部长。

    7. 男子兼职主播月入3毛还被辱骂 长沙一男子兼职主播月入3毛还被骂土鳖,公司回应:兼职人员无保底,有提前告知收入,他可以骂回去。

    8. 白宇用陕西话说绕口令把自己绕晕了 白宇《焚城》首映礼陕西话绕口令教学,没想到现场把自己给绕晕了,更接受了粤语绕口令挑战!

    9. 四川德阳市绵竹市发生3.0级地震

    10. 四姑娘山多名向导接力送失温游客下山

    —- 百度热搜新闻 End —-

    知乎新闻

    新闻来源:知乎日榜

    标题: 为什么说猫是液体的?
    链接: https://daily.zhihu.com/story/9776466
    ———————-
    标题: 人的意识是从原子层面还是量子层面产生的?
    链接: https://daily.zhihu.com/story/9776480
    ———————-
    标题: 人类什么时候才能进化出个「电子屏幕耐受性」?
    链接: https://daily.zhihu.com/story/9776486
    ———————-

    —- 知乎新闻 End —-

    IT之家新闻

    新闻来源:ITHome之家科技新闻

    标题: 立减千元 4999 元起:苹果 iPhone 16 / Pro 全系折后破冰新低
    发布时间: 2024-10-28T18:27:17.917
    新闻简介: 苹果 iPhone 16/Pro 系列 9 月 20 日首发上市,四款型号分别为 5999 元、6999 元、7999 元、9999 元起(前三个 128GB 起,Pro Max 256GB 起)。
    ———————-
    标题: 消息称米家 App 即将上线华为鸿蒙 HarmonyOS NEXT 系统
    发布时间: 2024-10-28T10:31:03.353
    新闻简介: 今天上午,博主@Adak封狼居胥 发文进一步解释了微信聊天记录迁移的其他细节。而在评论区中,有网友询问米家App鸿蒙HarmonyOS NEXT版的进展,该博主称:“快上线了”。
    ———————-
    标题: 王腾透露小米 15 Pro 手机售价超 5000 元,前代起售价 4999 元
    发布时间: 2024-10-28T13:18:56.077
    新闻简介: 小米中国区市场部副总经理、Redmi 品牌总经理王腾在 10 月 26 日的微博评论区中直言“小米 15 Pro 可是 5K+”,这意味着小米 15 Pro 手机的售价预计将突破 5000 元。
    ———————-
    标题: 小米发布米家工具箱:螺丝刀 / 扳手 / 羊角锤等多合一,众筹价 269 元
    发布时间: 2024-10-28T11:32:38.533
    新闻简介: 小米今天发布了米家工具箱并启动众筹预约,将于10月30日众筹开售,11月6日众筹结束。其建议零售价为299元,众筹价269元。
    ———————-
    标题: 消息称华为鸿蒙 HarmonyOS NEXT 系统当前有 3 种方式迁移微信聊天记录,暂不支持 PC 转移、云备份恢复
    发布时间: 2024-10-28T08:49:42.16
    新闻简介: 博主 @Adak封狼居胥 昨日发文透露,目前华为鸿蒙 NEXT 系统有 3 种方式迁移微信聊天记录,包括手机到手机自迁移、手机克隆、本地升级自动迁移,但暂不支持电脑到手机迁移、云备份恢复。
    ———————-
    标题: iFixit 拆解发现,苹果优化 iPad mini 7“果冻屏”并非靠硬件改动
    发布时间: 2024-10-28T07:23:41.89
    新闻简介: 电子产品维修网站 iFixit 发布了 iPad mini 7 的拆解视频,为该设备如何改善“果冻滚动(也被称为果冻屏)”问题增添了一丝神秘色彩。
    ———————-
    标题: 小米 SU7 Ultra 量产版官图公布,采用大尺寸碳纤维尾翼
    发布时间: 2024-10-28T09:20:59.877
    新闻简介: 从图片来看,小米 SU7 Ultra 量产版的尾部设计和小米 SU7 Ultra 原型车以及小米 SU7 的都不同,具体表现在尾翼和底部扩散器的设计方面。相比小米 SU7,小米 SU7 Ultra 量产版似乎采用了更大尺寸的碳纤维尾翼。
    ———————-
    标题: 苹果 iOS / iPadOS 18.1 正式版更新下载发布:通话录音、苹果 AI、相机控制…
    发布时间: 2024-10-28T23:15:16.693
    新闻简介: 本更新增强了“相机控制”的功能,并为 iPhone 带来了拍摄空间照片和通话录音等功能,以及错误修复和安全性更新。
    ———————-
    标题: 小米 SU7 Ultra 量产版官方预热视频公布:外观更犀利,明晚发布
    发布时间: 2024-10-28T10:13:31.137
    新闻简介: 相比小米 SU7,小米 SU7 Ultra 量产版在外观方面有诸多变化,包括车身侧面和车头上面的拉花,前脸底部的前铲设计也有所不同,当然,还有巨大的碳纤维尾翼,整体外观更加犀利。
    ———————-
    标题: 京东国际自营:iPad Pro 11 英寸 M4 芯片 256G 海外版 6199 元限时购
    发布时间: 2024-10-28T09:00:30.97
    新闻简介: 京东国际自营:iPad Pro 11 英寸 M4 芯片 256G 海外版 6199 元限时购
    ———————-
    标题: T1 3:1 战胜 GEN 晋级英雄联盟 S14 总决赛,将与“全华班” BLG 共同争夺冠军
    发布时间: 2024-10-28T08:00:04.51
    新闻简介: 今天凌晨,《英雄联盟》2024全球总决赛的半决赛第二日比赛落下帷幕,T1战队以3:1击败GEN战队,将于11月2日与“全华班”BLG会师决赛,争夺冠军。
    ———————-
    标题: 苹果发布 2024 款 24 英寸 iMac:换用 M4 芯片、起步 16GB RAM,10999 元起
    发布时间: 2024-10-28T23:05:08.523
    新闻简介: 官网现已上架 M4 款 24 英寸 iMac,这款 iMac 相比上一代主要换用 M4 芯片,起步 16GB RAM,其他保持不变,国行售价为 10999 元起。
    ———————-

    —- IT之家新闻 End —-

  • 10月29日,星期二, 每天60秒读懂全世界!

    百度热搜新闻

    新闻来源:百度热搜榜

    1. 一系列生育支持措施来了 近日,国务院印发一系列生育支持措施,从强化生育服务支持,加强育幼服务体系建设,强化教育、住房、就业等方面营造良好生育氛围。

    2. 警方强烈建议关闭FaceTime

    3. 当火车与秋天同框每一张都是壁纸 一年好景君须记,最是橙黄橘绿时,三秦大地五谷丰登,遍地锦绣,年丰时稔,喜上眉梢,快坐上火车一起去看看吧!

    4. 印军撤出中印争议边界地区

    5. 印尼巨贪家中查出近万亿现金

    6. 陈建文已任人民日报社总编辑 人民日报社官网“领导介绍”栏目信息更新显示,陈建文已任人民日报社总编辑。此前,陈建文任广东省委宣传部部长。

    7. 男子兼职主播月入3毛还被辱骂 长沙一男子兼职主播月入3毛还被骂土鳖,公司回应:兼职人员无保底,有提前告知收入,他可以骂回去。

    8. 白宇用陕西话说绕口令把自己绕晕了 白宇《焚城》首映礼陕西话绕口令教学,没想到现场把自己给绕晕了,更接受了粤语绕口令挑战!

    9. 四川德阳市绵竹市发生3.0级地震

    10. 四姑娘山多名向导接力送失温游客下山

    —- 百度热搜新闻 End —-

    知乎新闻

    新闻来源:知乎日榜

    标题: 为什么说猫是液体的?
    链接: https://daily.zhihu.com/story/9776466
    ———————-
    标题: 人的意识是从原子层面还是量子层面产生的?
    链接: https://daily.zhihu.com/story/9776480
    ———————-
    标题: 人类什么时候才能进化出个「电子屏幕耐受性」?
    链接: https://daily.zhihu.com/story/9776486
    ———————-

    —- 知乎新闻 End —-

    IT之家新闻

    新闻来源:ITHome之家科技新闻

    标题: 立减千元 4999 元起:苹果 iPhone 16 / Pro 全系折后破冰新低
    发布时间: 2024-10-28T18:27:17.917
    新闻简介: 苹果 iPhone 16/Pro 系列 9 月 20 日首发上市,四款型号分别为 5999 元、6999 元、7999 元、9999 元起(前三个 128GB 起,Pro Max 256GB 起)。
    ———————-
    标题: 消息称米家 App 即将上线华为鸿蒙 HarmonyOS NEXT 系统
    发布时间: 2024-10-28T10:31:03.353
    新闻简介: 今天上午,博主@Adak封狼居胥 发文进一步解释了微信聊天记录迁移的其他细节。而在评论区中,有网友询问米家App鸿蒙HarmonyOS NEXT版的进展,该博主称:“快上线了”。
    ———————-
    标题: 王腾透露小米 15 Pro 手机售价超 5000 元,前代起售价 4999 元
    发布时间: 2024-10-28T13:18:56.077
    新闻简介: 小米中国区市场部副总经理、Redmi 品牌总经理王腾在 10 月 26 日的微博评论区中直言“小米 15 Pro 可是 5K+”,这意味着小米 15 Pro 手机的售价预计将突破 5000 元。
    ———————-
    标题: 小米发布米家工具箱:螺丝刀 / 扳手 / 羊角锤等多合一,众筹价 269 元
    发布时间: 2024-10-28T11:32:38.533
    新闻简介: 小米今天发布了米家工具箱并启动众筹预约,将于10月30日众筹开售,11月6日众筹结束。其建议零售价为299元,众筹价269元。
    ———————-
    标题: 消息称华为鸿蒙 HarmonyOS NEXT 系统当前有 3 种方式迁移微信聊天记录,暂不支持 PC 转移、云备份恢复
    发布时间: 2024-10-28T08:49:42.16
    新闻简介: 博主 @Adak封狼居胥 昨日发文透露,目前华为鸿蒙 NEXT 系统有 3 种方式迁移微信聊天记录,包括手机到手机自迁移、手机克隆、本地升级自动迁移,但暂不支持电脑到手机迁移、云备份恢复。
    ———————-
    标题: iFixit 拆解发现,苹果优化 iPad mini 7“果冻屏”并非靠硬件改动
    发布时间: 2024-10-28T07:23:41.89
    新闻简介: 电子产品维修网站 iFixit 发布了 iPad mini 7 的拆解视频,为该设备如何改善“果冻滚动(也被称为果冻屏)”问题增添了一丝神秘色彩。
    ———————-
    标题: 小米 SU7 Ultra 量产版官图公布,采用大尺寸碳纤维尾翼
    发布时间: 2024-10-28T09:20:59.877
    新闻简介: 从图片来看,小米 SU7 Ultra 量产版的尾部设计和小米 SU7 Ultra 原型车以及小米 SU7 的都不同,具体表现在尾翼和底部扩散器的设计方面。相比小米 SU7,小米 SU7 Ultra 量产版似乎采用了更大尺寸的碳纤维尾翼。
    ———————-
    标题: 苹果 iOS / iPadOS 18.1 正式版更新下载发布:通话录音、苹果 AI、相机控制…
    发布时间: 2024-10-28T23:15:16.693
    新闻简介: 本更新增强了“相机控制”的功能,并为 iPhone 带来了拍摄空间照片和通话录音等功能,以及错误修复和安全性更新。
    ———————-
    标题: 小米 SU7 Ultra 量产版官方预热视频公布:外观更犀利,明晚发布
    发布时间: 2024-10-28T10:13:31.137
    新闻简介: 相比小米 SU7,小米 SU7 Ultra 量产版在外观方面有诸多变化,包括车身侧面和车头上面的拉花,前脸底部的前铲设计也有所不同,当然,还有巨大的碳纤维尾翼,整体外观更加犀利。
    ———————-
    标题: 京东国际自营:iPad Pro 11 英寸 M4 芯片 256G 海外版 6199 元限时购
    发布时间: 2024-10-28T09:00:30.97
    新闻简介: 京东国际自营:iPad Pro 11 英寸 M4 芯片 256G 海外版 6199 元限时购
    ———————-
    标题: T1 3:1 战胜 GEN 晋级英雄联盟 S14 总决赛,将与“全华班” BLG 共同争夺冠军
    发布时间: 2024-10-28T08:00:04.51
    新闻简介: 今天凌晨,《英雄联盟》2024全球总决赛的半决赛第二日比赛落下帷幕,T1战队以3:1击败GEN战队,将于11月2日与“全华班”BLG会师决赛,争夺冠军。
    ———————-
    标题: 苹果发布 2024 款 24 英寸 iMac:换用 M4 芯片、起步 16GB RAM,10999 元起
    发布时间: 2024-10-28T23:05:08.523
    新闻简介: 官网现已上架 M4 款 24 英寸 iMac,这款 iMac 相比上一代主要换用 M4 芯片,起步 16GB RAM,其他保持不变,国行售价为 10999 元起。
    ———————-

    —- IT之家新闻 End —-

  • Docker 搭建 changedetection 监控网页变化


    共计 567 个字符,预计需要花费 2 分钟才能阅读完成。

    ChangeDetect 是一个网页监控工具,用于监控网页的变化并向用户发送通知。它可以帮助用户跟踪网页内容的变化,比如新闻文章、产品价格、论坛帖子等等。

    所以,即便 url 是返回的数据,不是页面也可以监控到,docker 搭建方式如下:

    docker run -d \
    --name changedetection \
    -p 5000:5000 \
    -v datastore-volume:/datastore \
    --restart always \
    dgtlmoon/changedetection.io

    首页可以看见监控分组和分组下监控的 url。

    Docker 搭建 changedetection 监控网页变化

    />

    右上角的设置,在第一项通用可以设置检查间隔时间、密码、是否允许无密码查看监控内容的变化等等。

    同时,最重要的是第二项通知,它支持多种通知方式。

    Docker 搭建 changedetection 监控网页变化

    />

    比如最常见的邮件通知,格式如下:

    mailto://{userid}:{password}@{domain}:{port}?smtp={smtp_server}&from={from_email}&to={to_email}
    • userid:登录 SMTP 的用户
    • password:登录 SMTP 的用户的密码
    • domain:邮件的域地址
    • port:邮件服务器端口
    • smtpSMTP 服务器
    • from:如果您希望电子邮件地址 ReplyTo 地址不是您自己的电子邮件地址,那么您可以在此处指定它。
    • to:收件邮箱

    提醒:本文发布于396天前,文中所关联的信息可能已发生改变,请知悉!

    Tips:清朝云网络工作室

  • Mysql 数据库备份还原


    共计 1330 个字符,预计需要花费 4 分钟才能阅读完成。

    1 备份数据库

    1.1 备份单个数据库

    mysqldump -u root -p123456 --databases db1 > /var/lib/mysql/backup.sql
    • –all-databases, -A: 备份所有数据库
    • –databases, -B: 用于备份多个数据库,如果没有该选项,mysqldump 把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysqldum 把每个名字都当作为数据库名。
    • –no-data, -d:只导出表结构
    • –quick, -q:快速导出
    • –xml, -X:导出为 xml 文件

    备份单个数据库的某几个表,比较少用,可以了解下

    # 此处为不完整的sql,不能直接使用下面的还原语句。需要添加 use 命令选中数据库 
    mysqldump -u root -p123456 db1 tb1 tb2 > /var/lib/mysql/incomplete.sql

    1.2 备份多个数据库

    指定方式备份:

    mysqldump -u root -p123456 --databases db1 db2 > /var/lib/mysql/backup.sql

    排除方式备份:

    mysql_password=123456
    mysql -N -e "SELECT schema_name FROM information_schema.schemata WHERE schema_name NOT IN ('information_schema', 'mysql', 'performance_schema', 'sys');" -uroot -p$mysql_password | xargs mysqldump -uroot -p$mysql_password --databases > /var/lib/mysql/backup.sql

    上述命令是排除四个系统数据库:information_schema、mysql、performance_schema、sys 然后其他的表进行全备份。

    还有一种方式,这种方式会把包含对应字符串的也排除,比如 system 数据库将不会导出,不推荐这种。

    mysql_password=123456
    mysql -e "show databases;" -uroot -p$mysql_password| grep -Ev "Database|information_schema|mysql|performance_schema|sys" | xargs mysqldump -uroot -p$mysql_password --databases > /var/lib/mysql/backup.sql

    1.3 备份全部数据库

    如果需要备份所有的数据库和表,可以执行如下命令。

    mysqldump -uroot -p123456 --all-databases >/var/lib/mysql/backup.sql

    2 还原数据库

    可通过如下方式还原数据库,即执行 backup.sql 文件的 sql 语句。

    mysql -u root -p123456 < /var/lib/mysql/backup.sql

    如果不能通过输入明文密码的方式进行,可以通过修改配置文件 /etc/my.cnf 的方式,添加如下内容,然后重启 mysql。

    [mysqldump]
    user=root
    password=123456

    提醒:本文发布于396天前,文中所关联的信息可能已发生改变,请知悉!

    Tips:清朝云网络工作室

  • WebMvcConfigurer 详解


    共计 3736 个字符,预计需要花费 10 分钟才能阅读完成。

    简介

    WebMvcConfigurer 配置类其实是 Spring 内部的一种配置方式,采用 JavaBean 的形式来代替传统的 xml 配置文件形式进行针对框架个性化定制,可以自定义一些 Handler,Interceptor,ViewResolver,MessageConverter。

    在 SpringBoot 1.5 版本都是靠重写 WebMvcConfigurerAdapter 的方法来添加自定义拦截器,消息转换器等。SpringBoot 2.0 后,该类被标记为@Deprecated(弃用)。

    官方推荐直接实现 WebMvcConfigurer 或者直接继承 WebMvcConfigurationSupport,方式一实现 WebMvcConfigurer 接口(推荐),方式二继承 WebMvcConfigurationSupport 类。

    接口方法

    /**
     * 这里只介绍常用的方法
     */
    public interface WebMvcConfigurer {
        // 拦截器配置
        void addInterceptors(InterceptorRegistry var1);
    
        // 视图跳转控制器
        void addViewControllers(ViewControllerRegistry registry);
    
        // 静态资源处理
        void addResourceHandlers(ResourceHandlerRegistry registry);
    
        // 默认静态资源处理器
        void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer);
    
        // 配置视图解析器
        void configureViewResolvers(ViewResolverRegistry registry);
    
        // 配置内容裁决的一些选项
        void configureContentNegotiation(ContentNegotiationConfigurer configurer);
    
        // 解决跨域问题
        public void addCorsMappings(CorsRegistry registry) ;
    }

    方法解释

    1. addInterceptors(InterceptorRegistry var1)

    该方法用于配置拦截器,拦截器可以在请求处理的前后进行预处理和后处理。可以用于实现日志记录、权限验证、防止重复提交等功能。

    public class MyInterceptor implements HandlerInterceptor {
        @Override
        public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
            // 在请求处理之前进行拦截处理
            // 返回true表示继续处理请求,返回false表示中断请求处理
            return true;
        }
    }
    
    @Configuration
    public class WebMvcConfig implements WebMvcConfigurer {
        @Override
        public void addInterceptors(InterceptorRegistry registry) {
            registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**");
        }
    }
    1. addViewControllers(ViewControllerRegistry registry)

    该方法用于配置视图跳转控制器,它可以简化一些只需要简单页面跳转而无需额外处理的场景。

    @Configuration
    public class WebMvcConfig implements WebMvcConfigurer {
        @Override
        public void addViewControllers(ViewControllerRegistry registry) {
            registry.addViewController("/home").setViewName("home"); // 将访问路径/home映射到名为"home"的视图
            registry.addViewController("/login").setViewName("login");
        }
    }
    1. addResourceHandlers(ResourceHandlerRegistry registry)

    该方法用于配置静态资源处理,可以指定静态资源的位置和映射规则,让 Spring MVC 能够正确处理静态资源的访问请求。

    @Configuration
    public class WebMvcConfig implements WebMvcConfigurer {
        @Override
        public void addResourceHandlers(ResourceHandlerRegistry registry) {
            // 将所有以/static/开头的请求映射到classpath下的static目录
            registry.addResourceHandler("/static/**")
                    .addResourceLocations("classpath:/static/");
        }
    }
    1. configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer)

    该方法用于配置默认的静态资源处理器。当 DispatcherServlet 无法处理某些静态资源请求时,将会委托给默认的 Servlet 处理。

    @Configuration
    public class WebMvcConfig implements WebMvcConfigurer {
        @Override
        public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
            configurer.enable(); // 开启默认的静态资源处理
        }
    }
    1. configureViewResolvers(ViewResolverRegistry registry)

    该方法用于配置视图解析器,视图解析器用于将逻辑视图名解析为具体的视图。

    @Configuration
    public class WebMvcConfig implements WebMvcConfigurer {
        @Override
        public void configureViewResolvers(ViewResolverRegistry registry) {
            registry.jsp("/WEB-INF/views/", ".jsp"); // 使用JSP作为视图解析器,指定视图文件的位置和后缀
        }
    }
    1. configureContentNegotiation(ContentNegotiationConfigurer configurer)

    该方法用于配置内容裁决选项,内容裁决指的是根据客户端请求的媒体类型(如Accept头部信息)来决定返回响应的数据格式。

    @Configuration
    public class WebMvcConfig implements WebMvcConfigurer {
        @Override
        public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
            configurer.favorPathExtension(false) // 禁用URL扩展匹配
                      .favorParameter(true) // 启用请求参数匹配
                      .parameterName("format") // 设置请求参数名,默认为"format"
                      .ignoreAcceptHeader(true) // 忽略Accept头部信息
                      .defaultContentType(MediaType.APPLICATION_JSON); // 设置默认的内容类型
        }
    }
    1. addCorsMappings(CorsRegistry registry)

    该方法用于配置解决跨域问题,允许跨域资源共享(CORS)请求。

    @Configuration
    public class WebMvcConfig implements WebMvcConfigurer {
        @Override
        public void addCorsMappings(CorsRegistry registry) {
            registry.addMapping("/api/**") // 指定哪些路径支持跨域请求
                    .allowedOrigins("http://domain1.com", "http://domain2.com") // 允许的来源域名
                    .allowedMethods("GET", "POST", "PUT", "DELETE") // 允许的请求方法
                    .allowedHeaders("header1", "header2", "header3") // 允许的请求头
                    .allowCredentials(true); // 是否支持发送凭据,如cookies
        }
    }

    提醒:本文发布于396天前,文中所关联的信息可能已发生改变,请知悉!

    Tips:清朝云网络工作室