为具有公网IPV6地址的服务器安装nextcloudAIO并使用NginxProxyManager配置反向代理
软件和硬件环境
- ubuntu server 24.04,并已配置好ipv6公网地址,已安装好docker和docker-compose。
- 一块单独的硬盘,用于单独存储nextcloud数据。(非必需)
- 有一个能够正常解析的域名,并已配置好AAAA记录解析。
- 免费SSL证书可以通过Let’s Encrypt (letsencrypt.org)获取。
格式化用于存储nextcloud数据的硬盘(若无需求可跳过)
创建分区表
使用sudo fdisk -l
查看系统中的所有硬盘信息,并从中找到想用于存储nextcloud数据的硬盘,我这里的是/dev/sdb
。
使用sudo parted /dev/sdb
命令,进入分区编辑,使用如下命令进行分区(因为我的硬盘大于2TB,需要使用GPT类型分区表),其他分区方式请自行百度。
mache@mache:~$ sudo parted /dev/sdb
GNU Parted 3.6
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
# 设置分区表类型为gpt
Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to
continue?
Yes/No? yes
(parted) mkpart primary 0% 100%
# 将硬盘的所有空间设置为一个主分区,parted工具会自动为分区表留出空间
(parted) print
# 查看分区结果
Model: ATA ST3000VN007-2AX1 (scsi)
Disk /dev/sdb: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: Number Start End Size File system Name Flags1 1049kB 3001GB 3001GB primary(parted) ^C
# 退出编辑Information: You may need to update /etc/fstab.
也可使用fdisk
(2TB以下硬盘)或gdisk命令
(2T以上硬盘)进行分区,请自行百度。
输入d
可以删除原有分区,输入n
可以新建分区,输入w
可以将分区表写入并保存退出。
若硬盘容量大于2TB,必须改用gdisk
命令进行分区。
因为是安装完成后写的这篇记录,这里就不放具体操作流程了(命令使用方法可以自行百度),我自己只为硬盘创建了一个分区,就如上图所示。
格式化分区
分区完成后,使用mkfs格式化分区为ext4格式(nextcloud官方建议格式)。
mache@mache:~$ sudo mkfs.ext4 /dev/sdb1
mke2fs 1.47.0 (5-Feb-2023)
Creating filesystem with 732566272 4k blocks and 183148544 inodes
Filesystem UUID: e8c2956e-b1ae-4f30-8ab7-e0c5f3108de9
Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848, 512000000, 550731776, 644972544Allocating group tables: done
# 使用默认设置
Writing inode tables: done
# 使用默认设置
Creating journal (262144 blocks): done
# 使用默认设置
Writing superblocks and filesystem accounting information: done
# 使用默认设置
格式化完成后,再次使用sudo fdisk -l
查看是否分区成功。
挂载硬盘
使用sudo mkdir /data
创建用于挂载硬盘的目录。(请根据个人实际需求进行修改)
临时挂载
注:此种方式挂载只是暂时挂载,系统重启之后需要重新挂载。
使用sudo mount /dev/sdb1 /data
将格式化完成的新分区挂载到/data目录。可以使用sudo lsblk -f
查看是否挂载成功。
永久挂载
通过绑定UUID的形式进行挂载,其他方式请自行百度。
使用sudo blkid
命令查看所有硬盘的信息,找到需要挂载的分区的UUID(我这里是/dev/sdb1)。
unn@unn:/$ sudo blkid
# 其他信息省略
/dev/sdb1: UUID="e8c2956e-xxxx-xxxx-xxxx-xxxxxxxxxxxx" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="primary" PARTUUID="46f4705d-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
使用sudo vim /etc/fstab
打开fstab文件,在文末插入如下一行:
UUID=e8c2956e-xxxx-xxxx-xxxx-xxxxxxxxxxxx /data ext4 defaults 0 2
#需要挂载的分区的UUID 挂载点 分区文件类型 挂载参数 是否使用dump工具备份文件系统(按需修改) fsck检查文件系统的优先级(按需修改)
最后保存并退出,使用sudo mount -a
命令进行挂载。
安装NginxProxyManager
项目官方地址:NginxProxyManager
使用mkdir nginxproxymanager
新建文件夹用于存放NginxProxyManager配置和数据文件。
进入刚才新建的目录,使用以下docker-compose.yaml文件进行安装(docker-compose up -d
),其中network_mode
参数根据实际需求,可修改为host:
version: '3.8'
services:app:image: 'jc21/nginx-proxy-manager:latest'restart: unless-stoppednetwork_mode: bridge# 网络模式根据实际需求,可修改为hostports:# These ports are in format <host-port>:<container-port>- '80:80' # Public HTTP Port- '443:443' # Public HTTPS Port- '81:81' # Admin Web Port# Add any other Stream port you want to expose# - '21:21' # FTP# Uncomment the next line if you uncomment anything in the section# environment:# Uncomment this if you want to change the location of# the SQLite DB file within the container# DB_SQLITE_FILE: "/data/database.sqlite"# Uncomment this if IPv6 is not enabled on your host# DISABLE_IPV6: 'true'volumes:- ./data:/data- ./letsencrypt:/etc/letsencrypt
安装nextcloud AIO
官方文档: Nextcloud All-in-One
官方Nextcloud All-in-One反向代理文档: Reverse Proxy Documentation
使用mkdir nextcloud
新建文件夹用于存放NginxProxyManager配置文件,数据文件存放于刚才格式化并挂载好的硬盘中。
使用如下docker-compose.yaml文件,安装Nextcloud All-in-One(docker-compose up -d
):
services:nextcloud-aio-mastercontainer:image: nextcloud/all-in-one:latestinit: truerestart: alwayscontainer_name: nextcloud-aio-mastercontainer # 不要修改! This line is not allowed to be changed as otherwise AIO will not work correctlydns:# 设置常用的dns- 223.5.5.5- 119.29.29.29- 123.125.81.6- 180.76.76.76- 114.114.114.114volumes:- nextcloud_aio_mastercontainer:/mnt/docker-aio-config # This line is not allowed to be changed as otherwise the built-in backup solution will not work- /var/run/docker.sock:/var/run/docker.sock:ro # May be changed on macOS, Windows or docker rootless. See the applicable documentation. If adjusting, don't forget to also set 'WATCHTOWER_DOCKER_SOCKET_PATH'!network_mode: bridge # add to the same network as docker run would doports:# - 80:80 # Can be removed when running behind a web server or reverse proxy (like Apache, Nginx, Caddy, Cloudflare Tunnel and else). See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md- 8080:8080# - 8443:8443 # Can be removed when running behind a web server or reverse proxy (like Apache, Nginx, Caddy, Cloudflare Tunnel and else). See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.mdenvironment:APACHE_PORT: 11000 # aio代理服务器的监听端口APACHE_IP_BINDING: 0.0.0.0 # 监听所有可用的ipv4地址,按需修改。未测试过修改为,是否可以。NEXTCLOUD_DATADIR: /data # 自定义nextcloud的数据目录,按需修改,如果不需要修改,请注释掉这条。⚠️⚠️⚠️不要在nextcloud安装完成后调整。volumes: # If you want to store the data on a different drive, see https://github.com/nextcloud/all-in-one#how-to-store-the-filesinstallation-on-a-separate-drivenextcloud_aio_mastercontainer:name: nextcloud_aio_mastercontainer # 不要修改! This line is not allowed to be changed as otherwise the built-in backup solution will not workdriver: localdriver_opts:type: 'none'o: 'bind'device: '/home/mache/nextcloud/config' # 自定义配置文件存放在刚才创建好的目录中# 如果不需要自定义配置文件的存放目录,请使用以下配置进行代替
# volumes: # If you want to store the data on a different drive, see https://github.com/nextcloud/all-in-one#how-to-store-the-filesinstallation-on-a-separate-drive
# nextcloud_aio_mastercontainer:
# name: nextcloud_aio_mastercontainer # This line is not allowed to be changed as otherwise the built-in backup solution will not work
安装完成后,使用查看容器是否已成功启动:
请注意此时只有一个nextcloud相关的容器在运行。
在电脑上打开浏览器,使用https://ubuntu_server的ip:8080
连接nextcloud aio容器。
以下以edge浏览器为例,若提示你的连接不是专用连接,依次点击“高级”“继续访问xxx.xxx.xxx.xxx(不安全)”。
进入页面后,若是第一次登录,记下AIO配置的密码(红框中圈出的部分,只会显示这一次),然后点击open nextcloud aio login
。
输入刚才记录的密码,登录配置页面,若页面中有AIO is currently in "reverse proxy mode"
,则可以进入下一步骤:
配置NginxProxyManager
查看nginx配置所需要的反向代理ip地址
使用sudo docker container ls
查看,此时能看见有2个nextcloud容器:
其中使用nextcloud/all-in-one:latest
镜像的容器,是上一步通过docker-compose安装的。而另一个使用nextcloud/aio-domaincheck:latest镜像的容器,据我推测,是在进入https://192.168.5.125:8080/containers页面后,由nextcloud所启动的,从镜像名称、容器绑定的端口与上一步docker-compose.yaml中的APACHE_PORT
匹配来看,是用于校验反向代理域名。
这时还需要注意一点,虽然上一步的docker-compose.yaml中指定的网络为docker自带的bridge网络,但是此时通过sudo docker inspect nextcloud-aio-mastercontainer
和sudo docker inspect nextcloud-aio-domaincheck
查看Network配置,能看出此时两个容器均绑定了一个新的nextcloud-aio
网络:
nextcloud-aio-mastercontainer容器网络情况如下:
nextcloud-aio-domaincheck容器网络情况如下:
此时,记下nextcloud-aio
网络的前12位前缀:c01a06d998e6
,以及nextcloud-aio-domaincheck容器的IP地址:172.19.0.3
。
使用NginxProxyManager配置反向代理
在主机上打开浏览器,使用http://ubuntu_server的ip:81
打开NginxProxyManager配置页面,登录使用的默认邮箱为admin@example.com
,默认密码为changeme
:
导入SSL证书(若已有)
首先将SSL证书下载到电脑上,证书格式为PEM_NGINX
格式。
点击NginxProxyManager主页的SSL Certificates
,进入SSL配置页面,点击Add SSL Certificates
,证书来源选择Custom
(或者Let’s Encrypt,这会尝试通过Let’s Encrypt申请一个免费SSL证书,能否成功看网络情况)。
Name
填写nextcloud(按需修改),Certificate Key
选择已经下载好的公钥,Certificate
选择已经下载好的私钥,然后点击保存。
配置Nextcloud反向代理
点击最右侧的Proxy Hosts
,再点击中间的绿色按钮添加代理服务:
Details
选项卡配置:Domain Names
填写已经配置好解析的域名,Schme
设为http,Forward Hostnam/IP
填写上一步中查到的nextcloud-aio-domaincheck容器的IP地址,Forward Port
填写第4步中yaml文件里的APACHE_PORT
的值,并勾选Block Common Exploits
和Webscokets Support
。
注意:若第3步中,通过docker安装NginxProxyManager时,选择的网络模式为host,则**Forward Hostnam/IP**
填写为**localhost**
。
Custom locations
选项卡可以不配置。
SSL
选项卡配置:SSL证书选择刚才自行导入的证书,并勾选Force SSL
和HTTP/2 Support
。若需要免费证书,可以选择Request a new SSL Certificate,with Let’s Encrypt,这会尝试通过Let’s Encrypt申请一个免费证书,但能不能申请成功就看网络情况了。
Advanced
选项卡配置:填写以下三行内容,最后点击保保存。
client_body_buffer_size 512k;
proxy_read_timeout 86400s;
client_max_body_size 0;
配置防火墙(若以host网络模式安装NginxProxyManager,则无需配置)
由于docker默认的策略,现在nextcloud-aio-domaincheck容器绑定的nextcloud-aio
网络和NginxProxyManager容器的bridge
网络之间是互相隔离的,这会导致NginxProxyManager与nextcloud-aio的容器之间无法建立连接,因此需要修改iptables策略。
使用以下命令,其中的br-c01a06d998e6的后缀要与第5.1步中查看的后缀匹配:
sudo iptables -I DOCKER-USER -i docker0 -o br-c01a06d998e6 -j ACCEPT
sudo iptables -I DOCKER-USER -i br-c01a06d998e6 -o docker0 -j ACCEPT
配置nextcloud AIO
验证域名及网络通信情况。
在New AIO instance中填写已设置好反向代理的域名,然后点击Submit domain
进行验证(记得在路由器防火墙上放行公网流量,允许连接80和443端口)。
设置时区(按需)
翻到页面最下方的Timezone change
部分可以设置时区。
配置备份(按需)
使用以下命令创建用于备份的卷。
sudo docker volume create --driver local --name nextcloud_aio_backupdir -o device="/自定义的backup文件夹路径" -o type="none" -o o="bind"
在Backup and restore
部分中填写备份卷名称,点击submit后记下密码。
选择额外功能(按需)
在Optional containers
下方,可以选择需要额外安装的功能,注意选择功能时,需要确保电脑配置能满足后面标注的需求。
下载并启动nextcloud
现在选择完毕需要的额外功能后(也可以都不选),点击Download and start containers
,下载启动并配置nextcloud所有的容器。下载速度看网速。
下载完成后,确保页面显示的所有相关容器都已处于stopped状态,然后点击start and update containers
更新配置,并启动所有容器。
等待,需要较长时间,直到所有容器的状态显示绿色的Running,中途可点击Reload
刷新页面。如果有容器显示红色的Stopped,先点击下方的Stop containers
,然后再点击start and update containers
。
安装完毕如下,这里我选择了Imaginary和Fulltextsearch功能,所以会多两个容器:
点击Click here to reveal the initial Nextcloud credentials
查看并记录初始用户名、密码。
修改NginxProxyManager(若以host网络模式安装NginxProxyManager,则无需配置)
使用sudo docker inspect nextcloud-aio-apache
查看Apache容器的IP地址:
打开浏览器,进入NginxProxyManager的配置页面,修改已配置好的代理的Forward Hostname / IP为Apache容器的IP,并保存:
开始使用nextcloud
在浏览器中使用已配置好的域名进入nextcloud的首页,使用第6.5步中记录的初始用户名和密码,开始使用。
相关文章:

为具有公网IPV6地址的服务器安装nextcloudAIO并使用NginxProxyManager配置反向代理
软件和硬件环境 ubuntu server 24.04,并已配置好ipv6公网地址,已安装好docker和docker-compose。一块单独的硬盘,用于单独存储nextcloud数据。(非必需)有一个能够正常解析的域名,并已配置好AAAA记录解析。…...
挖矿宝藏之TCP/IP
目录 一、TCP/IP简介 1.TCP自述 2.IP自述 二、TCP/IP 寻址 1.IP V6 2.域名 三、TCP/IP协议 一、TCP/IP简介 TCP/IP 指传输控制协议/网际协议(Transmission Control Protocol / Internet Protocol),是供已连接因特网的计算机进行通信的…...

略谈set与map的pair封装与进入哈希
引子:之前我们讲了红黑树的自实现,与小小的接口实现,那set与map的pair封装是如何实现的呢?,今天我们来一探究竟,而且我们也要进入新章节--哈希 对于operator--()的封装: 注意:牢记思…...

android13 串口编号修改 串口名修改
总纲 android13 rom 开发总纲说明 目录 1.前言 2.技术分析 别名定义的语法规则 3.修改示例 使用别名 注意事项 4.不生效分析 5.编译查看 6.其他方法 7.彩蛋 1.前言 更改Android设备的串口编号涉及对系统深层次的配置进行修改,通常是为了解决硬件兼容性问题或满足特…...

工作中常用的软件竟可直接下载0.5m卫星影像(Esri影像、天地图、星图)、DEM、土地覆盖数据...
之前我们有介绍过在ArcGIS通过插件、WTMS或者lyr添加谷歌影像、天地图等各种在线图源。今天我们就来再整理一套既方便查看又方便下载的教程,软件就是我们常用的Global Mapper,有点强。 这里我们整理了一些我们工作学习中常用的一些数据下载方法…...
1章3节:R 语言的产生与发展轨迹
R语言诞生于1990年代,由统计学家Ross Ihaka和Robert Gentleman在新西兰奥克兰大学开发,旨在提供一种免费开源、灵活强大的统计编程工具。R语言基于S语言的设计理念,并通过其开源社区的贡献迅速发展,形成了庞大的生态系统,包括CRAN、RStudio和Shiny等。R语言以其强大的统计…...
html常用标签
一、无序列表 ul li 注意事项:ul下面不可以嵌套其他标签,li下可以 二、有序列表 ol li 注意事项同无序列表 三、自定义列表 dd dt 注意事项同无序列表 四 、表格 table tr:行 th:表头 td:内容 4.1合并单元格 步骤 1.明确合并的目标 2.保留…...

选择文件鼠标右键自定义菜单
注册表路径 计算机\HKEY_CLASSES_ROOT\*\shell 效果 操作 1.定位 winr,输入regedit, 地址栏输入以下路径,并回车。 计算机\HKEY_CLASSES_ROOT\*\shell 2.在shell上右键,新建项 3右键新建字符串值,Icon,Position 4 右键新建c…...
Linux安全与高级应用(九)Linux远程访问与控制:安全与最佳实践
文章目录 Linux远程访问与控制:安全与最佳实践引言一、SSH服务的基本概述二、密钥对验证的SSH体系三、TCP Wrappers的使用四、构建安全的SSH服务实践五、结论 👍 个人网站:【 洛秋导航】【洛秋资源小站】 Linux远程访问与控制:安全…...

前端已经学会vue,做粒子效果
目录 1. Canvas API 2. WebGL 3. 粒子系统 4. 动画与性能优化 5. 现有库和框架 6. Vue 组件和状态管理 实践项目建议 案例1 案例2雪花 已经熟悉了 Vue、TypeScript 和 JavaScript,下面是一些你可以学习的内容,以帮助你实现粒子效果的界面&#…...

Nessus——全面的漏洞扫描神器
一、引言 在网络安全的领域中,及时发现和评估系统中的漏洞是保障网络安全的关键步骤。Nessus 作为一款备受认可的漏洞扫描工具,为企业和安全专业人员提供了强大而全面的漏洞检测和评估功能。本文将深入介绍 Nessus 的特点、功能、使用方法以及其在实际应…...
自动化部署的艺术:Conda包依赖管理的终极指南
标题:自动化部署的艺术:Conda包依赖管理的终极指南 在当今快速发展的科学计算和数据分析领域,Conda已成为Python开发者和数据科学家的首选包管理器之一。它不仅能够管理Python包,还能处理不同语言环境的依赖关系,确保…...
详解Xilinx FPGA高速串行收发器GTX/GTP(7)--IBERT IP核的使用
目录 1、什么是IBERT? 2、IBERT IP核的使用 3、Example Design的使用 4、IBERT的测试 4.1、误码率测试 4.2、眼图测试 4.3、回环测试(Loopback) 5、源码下载 文章总目录点这里:《FPGA接口与协议》专栏的说明与导航 1、什么是IBERT? IBERT就是Xilinx提…...

瞬态噪声抑制算法流程解析
在语音增强领域,噪声通常可以分为稳态噪声(例如白噪声)和瞬态噪声(也称为非稳态噪声,如键盘声)。对于熟悉语音降噪的读者来说,通常的信号处理方法对稳态噪声有较好的效果,具体可以参考WebRTC ANR流程解析。然而,对于瞬态噪声,由于噪声变化迅速,传统的噪声估计算法难…...

只用一个 HTML 元素可以写出多少形状?——多边形篇
上一篇章的末尾,我们只用一个 div 元素写了一个鸡蛋,在欧几里得平面几何中,鸡蛋的形状已经不能算是标准形状了。对于非标准的形状,没有比较直观的几何规律,命名方面也更加困难,俗称不规则图形,在…...

QT界面设计开发(Visual Studio 2019)—学习记录一
一、控件升级 简要介绍: 简单来说,控件提升就是将一个基础控件(Base Widget)转换为一个更特定、更复杂的自定义控件(Custom Widget)。这样做的目的是为了在设计界面时能够使用更多高级功能,而不…...
Kafka 单机和集群环境部署教程
目录 一、Kafka 单机环境部署1. 环境准备2. 安装 Java3. 安装 ZooKeeper3.1 下载并解压 ZooKeeper3.2 配置 ZooKeeper3.3 启动 ZooKeeper3.4 验证 ZooKeeper 是否正常运行 4. 安装 Kafka4.1 下载并解压 Kafka4.2 配置 Kafka4.3 创建日志目录4.4 启动 Kafka Broker4.5 验证 Kafk…...

使用Python发送PDD直播间弹幕(协议算法分析)
文章目录 1. 写在前面2. 接口分析3. 算法还原 【🏠作者主页】:吴秋霖 【💼作者介绍】:擅长爬虫与JS加密逆向分析!Python领域优质创作者、CSDN博客专家、阿里云博客专家、华为云享专家。一路走来长期坚守并致力于Python…...
1056. Mice and Rice (25)-PAT甲级真题
当时没想到可以用队列来做,就傻傻的模拟了,用cur存当前轮的id,这个id对应的是order的下标,这里有个求rank的技巧就是当前轮没有晋级的rank为(当前轮的组数1) 模拟: #include<bits/stdc.h&g…...

色轮在数据可视化中的应用
在数据可视化中,色彩的运用不仅仅是为了美观,更是为了传达信息、区分数据和提升图表的易读性。本文探讨色轮及其色彩公式的应用,帮助大家更好地运用色彩来提升数据可视化的效果。 1、色轮的基础概念 色轮是一个用于表示颜色之间关系的图形工…...
在Ubuntu24上采用Wine打开SourceInsight
1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...

深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用
文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么?1.1.2 感知机的工作原理 1.2 感知机的简单应用:基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...

Vue ③-生命周期 || 脚手架
生命周期 思考:什么时候可以发送初始化渲染请求?(越早越好) 什么时候可以开始操作dom?(至少dom得渲染出来) Vue生命周期: 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...

CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!
本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...

Linux部署私有文件管理系统MinIO
最近需要用到一个文件管理服务,但是又不想花钱,所以就想着自己搭建一个,刚好我们用的一个开源框架已经集成了MinIO,所以就选了这个 我这边对文件服务性能要求不是太高,单机版就可以 安装非常简单,几个命令就…...

【堆垛策略】设计方法
堆垛策略的设计是积木堆叠系统的核心,直接影响堆叠的稳定性、效率和容错能力。以下是分层次的堆垛策略设计方法,涵盖基础规则、优化算法和容错机制: 1. 基础堆垛规则 (1) 物理稳定性优先 重心原则: 大尺寸/重量积木在下…...
React核心概念:State是什么?如何用useState管理组件自己的数据?
系列回顾: 在上一篇《React入门第一步》中,我们已经成功创建并运行了第一个React项目。我们学会了用Vite初始化项目,并修改了App.jsx组件,让页面显示出我们想要的文字。但是,那个页面是“死”的,它只是静态…...
统计学(第8版)——统计抽样学习笔记(考试用)
一、统计抽样的核心内容与问题 研究内容 从总体中科学抽取样本的方法利用样本数据推断总体特征(均值、比率、总量)控制抽样误差与非抽样误差 解决的核心问题 在成本约束下,用少量样本准确推断总体特征量化估计结果的可靠性(置…...

云原生时代的系统设计:架构转型的战略支点
📝个人主页🌹:一ge科研小菜鸡-CSDN博客 🌹🌹期待您的关注 🌹🌹 一、云原生的崛起:技术趋势与现实需求的交汇 随着企业业务的互联网化、全球化、智能化持续加深,传统的 I…...