常用开发组件Docker部署保姆级教程
说明
本文总结了一些常用组件的Docker启动命令及过程,在开发过程中只需花费数分钟下载和配置即可完美使用这些服务。
Mysql

MySQL 是一种开源关系数据库管理系统(RDBMS),目前由 Oracle 公司维护。MySQL 以其高性能、可靠性和易用性而著称,应用于各种应用程序和网站,尤其是在 LAMP(Linux、Apache、MySQL 和 PHP/Python/Perl)堆栈中。以下是 MySQL 的一些核心特点和优势:
-
开源:MySQL 是开源软件,用户可以自由使用、修改和分发其源代码。
-
关系数据库:MySQL 使用结构化查询语言(SQL)来操作数据,支持表、视图、索引等经典的数据库管理功能。
-
高性能:MySQL 以其快速的数据处理能力而著称,适合高并发环境和大型数据集的应用。包括查询优化、存储引擎选择等多种性能增强特性。
-
可扩展性:MySQL 可以处理从小型到大型的数据库,支持几百GB到几TB的数据规模,且可以根据需求扩展数据库。
-
事务支持:MySQL 支持 ACID(原子性、一致性、隔离性、持久性)事务,确保数据操作的可靠性和完整性。
-
多种存储引擎:MySQL 提供了多种存储引擎(如 InnoDB、MyISAM、MEMORY 等),用户可以根据具体需求选择合适的存储方式。
-
安全性:MySQL 提供多种安全机制,包括用户权限管理、SSL 加密连接、数据加密等,以保护数据的安全。
-
跨平台支持:MySQL 可以在多种操作系统上运行,包括 Linux、Windows、macOS 等,适应性强。
-
社区和支持:MySQL 拥有活跃的开发者社区,提供广泛的文档、示例和支持。此外,Oracle 公司也提供商业支持与服务。
-
集成和兼容性:MySQL 可以与多种编程语言和开发框架集成,包括 PHP、Java、Python、Node.js 等,方便开发各种应用。
拉取镜像
docker pull mysql:8.0.28
启动
docker run -d --name mysql \ #容器名称
-p 3306:3306 \ # 端口映射
--restart=always \ # 自动重启
-v /data/mysql/data/:/var/lib/mysql \ # 数据目录映射
-v /data/mysql/conf/:/etc/mysql \ # 配置目录映射
-e MYSQL_ROOT_PASSWORD=root \ # root密码
-e TZ=Asia/Shanghai \ # 设置时区
--lower_case_table_names=1\ # 关闭大小写敏感mysql:8.0.28 # 镜像名称
配置
# 进入容器内部
docker exec -it mysql /bin/bash
mysql
use mysql;
# 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root的密码';
#刷新数据库
flush privileges;
# 或者以下
mysql -uroot -proot
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root的密码';
#刷新数据库
flush privileges;
备份数据
docker exec mysql mysqldump -h $ip -P $port -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql
Emqx

EMQX 是一款高性能的开源 MQTT 消息代理,专为物联网 (IoT) 和分布式应用程序设计。它支持 MQTT 协议,同时也可以轻松集成其他协议,如 HTTP、WebSocket 和 CoAP。以下是 EMQX 的一些重要特性和优势:
-
高性能:EMQX 能够支持数百万的并发连接,这使其适用于大型的 IoT 部署。它以优化的消息处理能力,可以实现快速的消息传递和高吞吐量。
-
分布式架构:EMQX 采用分布式架构,支持集群部署,确保系统的可靠性和可扩展性。可以通过简单的配置来扩展集群的节点。
-
多协议支持:除了 MQTT,EMQX 也支持多种协议,包括 MQTT 5.0、WebSocket、HTTP、CoAP 等,这使得它能够与各种类型的客户端和设备进行通信。
-
丰富的管理工具:EMQX 提供了用户友好的管理界面和命令行工具,方便用户监控、管理和配置 MQTT 代理。
-
插件系统:EMQX 支持插件扩展,可以通过自定义插件来满足特定需求,比如身份验证、存储后端、协议转换等。
-
安全性:EMQX 提供了多种安全机制,包括 TLS 加密、用户认证、访问控制列表 (ACL) 等,确保数据传输安全和用户权限管理。
-
开放源代码:EMQX 是一个开源项目,用户可以根据自己的需求进行修改和定制,同时也能享受到社区提供的支持和文档。
-
云原生:EMQX 适用于云环境,可以与 Kubernetes 等容器编排工具完美集成,方便用户在云环境中部署和管理 IoT 应用。
拉取镜像
docker pull emqx/emqx
启动
docker run -d --name emqx \ # 容器名称
--privileged=true \ # 权限
--restart always \ # 自动重启
-e EMQX_DASHBOARD__DEFAULT_USERNAME=admin \ # 用户名
-e EMQX_DASHBOARD__DEFAULT_PASSWORD=admin \ # 密码
-p 32642:1883 \ # 端口映射
-p 31862:8883 \
-p 30559:8083 \
-p 30079:8084 \
-p 31841:18083 \
emqx/emqx # 镜像名称
Minio

MinIO 是一个高性能的对象存储服务器,主要用于大数据和机器学习等应用场景。它兼容 Amazon S3 API,并且可以在私有云、公有云或者边缘计算环境中运行。以下是 MinIO 的一些重要特性和优势:
-
高性能:MinIO 采用了高效的存储设计,可以达到非常高的吞吐量,适合处理大量的数据读写请求。
-
S3 兼容性:MinIO 支持与 Amazon S3 API 兼容的接口,用户可以轻松地将现有的 S3 应用迁移到 MinIO,或者使用现有的 S3 类库和工具。
-
简单易用:MinIO 提供了简洁的命令行工具和图形用户界面,使得管理和使用存储变得更加简单。
-
高可用性和分布式:MinIO 支持数据冗余和分布式架构,可以通过自动数据复制保证数据的安全性和高可用性。
-
支持多种存储后端:MinIO 可以与多种底层存储集成,例如本地磁盘、网络存储(如 NFS、Ceph)以及云存储。
-
安全性:MinIO 支持端到端的加密,用户可以通过访问控制和身份验证机制确保数据的安全性。
-
扩展性:MinIO 支持水平扩展,用户可以通过添加更多节点来扩展存储容量和性能,满足不断增长的数据需求。
拉取镜像
docker pull minio/minio:RELEASE.2020-08-08T04-50-06Z
启动
docker run -p 32300:9000 --name minio\ # 容器名称
--privileged=true\ # 权限
--restart always \ # 自动重启
-e "MINIO_ACCESS_KEY=admin" \ # 用户名
-e "MINIO_SECRET_KEY=password" \ # 密码
-v /data/miniodata:/data \ # 数据目录映射
-v /data/miniodata/config:/root/.minio \
-d minio/minio:RELEASE.2020-08-08T04-50-06Z server /data -address ":9000" # 镜像名称
Nacos

Nacos(清新开放的服务发现和配置管理平台)是一个开源的、动态服务发现、配置管理和服务管理平台,由阿里巴巴开发并维护的,属于 Apache 软件基金会的一部分。以下是 Nacos 的一些主要特点和功能:
-
服务发现:Nacos 支持服务治理,提供灵活的服务发现机制。服务可以通过 Nacos 注册、注销,并通过 Nacos 查询到其他服务的实例信息,便于进行负载均衡和故障转移。
-
动态配置管理:Nacos 提供了强大的配置管理功能,支持动态配置更新。开发者可以在运行时修改配置,Nacos 会将最新的配置信息推送到相关的服务实例中,而无需重启。
-
易用的操作界面:Nacos 提供了一个用户友好的 Web 控制台,便于用户进行服务和配置的管理,监控服务的状态及其健康情况。
-
多种数据源支持:Nacos 支持多种数据源格式,包括 JSON、YAML、XML 等,适应不同的项目需求。
-
支持多种语言:Nacos 提供了 Java、Go、Node.js 等多种语言的客户端 SDK,使得不同语言的应用程序都可以方便地与 Nacos 进行交互。
-
健康检查:Nacos 定期对注册的服务实例进行健康检查,以确保系统的稳定性和可用性。当服务实例异常时,Nacos 会自动将其剔除出可用的服务列表。
-
多环境和多集群支持:Nacos 支持多环境配置,允许用户为不同的环境(如开发、测试、生产等)维护独立的配置。同时支持多集群的部署,适应大规模的分布式系统。
-
高可用性:Nacos 采用分布式架构,支持集群模式,提供高可用性和容错能力,确保服务的持续可用性。
-
易于集成:Nacos 可以与 Spring Cloud、Dubbo 等微服务框架无缝集成,成为微服务架构中的重要组成部分。
拉取镜像
docker pull nacos/nacos-server:latest
运行镜像
docker run --name nacos\ # 容器名称-p 8848:8848 \ # 端口映射
--privileged=true \ # 权限
--restart=always \ # 自动重启
-e SPRING_DATASOURCE_PLATFORM=mysql \ # 数据源
-e MYSQL_SERVICE_HOST=10.5.112.221 \ # 数据源IP
-e MYSQL_SERVICE_PORT=3306 \ # 数据源port
-e MYSQL_SERVICE_USER=root \ # 数据源用户
-e MYSQL_SERVICE_PASSWORD=123mdf \ # 数据源密码
-e MYSQL_SERVICE_DB_NAME=nacosdb \ # 数据源数据库名
-e MODE=standalone \ # 模式
-v /home/nacos/logs:/home/nacos/logs \ # 日志目录映射
-d nacos/nacos-server:latest # 镜像名称
Redis

Redis(Remote Dictionary Server)是一种开源的高性能键值存储数据库,广泛用于缓存、消息队列、实时分析和数据存储等多种场景。以下是 Redis 的一些关键特性和功能:
-
内存存储:Redis 将数据存储在内存中,提供极快的数据读写速度,适用于需要低延迟的场景。
-
丰富的数据结构:Redis 支持多种数据结构,包括字符串、哈希、列表、集合、有序集合、位图、超日志等,能够满足不同情境下的数据存储需求。
-
持久化存储:虽然 Redis 主要是内存数据库,但也支持数据持久化,可以通过快照(RDB)或追加文件(AOF)将数据保存到磁盘,避免数据丢失。
-
高可用性和分布式:Redis 支持主从复制(Replication)和分片(Sharding),可以通过 Redis Sentinel 实现高可用性,确保在主节点故障时可以自动切换到从节点。
-
支持事务:Redis 支持简单的事务,允许将多个命令打包成一个原子操作,确保数据的一致性。
-
发布/订阅(Pub/Sub)机制:Redis 提供发布/订阅模式,允许消息的发送者与接收者解耦,适合实现实时消息推送和通知功能。
-
Lua 脚本支持:Redis 支持使用 Lua 脚本执行复杂的操作,能够在服务器端进行原子性处理,减少网络延迟。
-
水平扩展:通过 Redis Cluster,Redis 可以实现自动分片和数据的横向扩展,适应大规模应用的需求。
-
监控与管理工具:Redis 提供命令行界面(CLI)和图形化管理工具(如 RedisInsight)以便于监控和管理 Redis 实例。
-
多种客户端支持:Redis 提供了丰富的客户端库,支持多种编程语言,如 Java、Python、C#、Go、Node.js 等,使开发者能够轻松集成到各种应用中。
拉取镜像
docker pull redis
配置
# 编辑配置文件
vim /data/myapp/mydata/redis/conf/redis.conf
appendonly yes #redis持久化(可选)
requirepass 密码 #配置redis访问密码
databases 16 #数据库个数(可选)
运行镜像
docker run --name redis-vcco\ # 容器名称
--restart always \ # 自动重启
-v /data/vcco-sh-server/redis/data:/data \ # 数据目录映射
-v /data/vcco-sh-server/redis/conf/redis.conf:/etc/redis/redis.conf \
-dp 31900:6379 \ # 端口映射
redis redis-server /etc/redis/redis.conf # 镜像名称
Nginx

Nginx是一款开源的高性能Web服务器和反向代理服务器,具有负载均衡和HTTP缓存等功能。最流行的Web服务器之一。以下是Nginx的一些关键特性和功能:
-
高性能:Nginx 以事件驱动的架构设计,使其能够处理大量的并发连接,适合高流量的环境。它在静态文件处理、反向代理和负载均衡等方面表现出色。
-
反向代理:Nginx 可作为反向代理服务器,转发来自客户端的请求到后端服务器,并将响应返回给客户端。这种架构有助于提升系统的安全性和可扩展性。
-
负载均衡:Nginx 支持多种负载均衡算法(如轮询、最少连接、IP哈希等),可以将请求智能地分配到多个后端服务器,提升整个平台的可靠性和性能。
-
静态文件服务:Nginx 专注于高效地提供静态文件服务,如HTML、CSS、JavaScript 和图片等,相较于其他Web服务器,Nginx 在处理这类请求时速度更快。
-
HTTP/HTTPS 支持:Nginx 完全支持现代的HTTP协议,并且支持SSL/TLS加密,能够安全地处理HTTPS请求,为用户提供安全的访问体验。
-
WebSocket支持:Nginx 可作为WebSocket的代理,支持实时通信应用,如在线聊天和实时数据更新等。
-
模块化架构:Nginx 采用模块化架构,用户可以根据需要编译和加载特定模块,以增加功能或优化性能。
-
缓存机制:Nginx 具备强大的HTTP缓存功能,可以缓存后端服务器的响应,减轻原服务器的负担,提高响应速度。
-
URL重写和重定向功能:Nginx 支持强大的URL重写和重定向功能,便于进行SEO优化、路由管理和内容迁移。
-
易于配置:Nginx 的配置文件简单明了,允许用户通过少量的指令进行复杂的配置,适合快速部署和管理。
配置
编写Dockfile
vim Dockfile-nginx
# 使用基础的Node.js镜像
FROM node:16.14.0 as builder# 创建目录
RUN mkdir -p /opt/sv-webapp
# 指定路径
COPY . /opt/sv-webapp
WORKDIR /opt/sv-webapp# 安装依赖
RUN cd deploy \&& tar zxf zlib-1.2.13.tar.gz \&& cd zlib-1.2.13 \&& ./configure \&& make && make install \&& cp /usr/local/lib/libz.so.1.2.13 /lib64/libz.so.1 \&& chmod 755 /lib64/libz.so.1# 编译打包
RUN ls -a \&& npm config set registry https://registry.npm.taobao.org \&& yarn install \&& yarn build:dev# 拉取nginx镜像
FROM nginx AS production# 把打包好的文件移到 docker拉取的nginx镜像默认读取路径里(/usr/share/nginx/html)
COPY --from=builder /opt/sv-webapp/dist /opt/sv-webapp/distRUN echo "server { \listen 80; \server_name 192.1.1.31; \location / { \root /opt/sv-webapp/dist/; \index index.html index.htm; \} \location /api/v1/ { \proxy_set_header Host \$host; \proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for; \proxy_pass http://192.1.1.31:30521/api/v1/; \} \location /api/ { \proxy_set_header Host \$host; \proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for; \proxy_pass http://192.1.1.31:32004/api/; \} \access_log /var/log/nginx/access.log ; \} " > /etc/nginx/conf.d/default.confEXPOSE 80
EXPOSE 443
启动
docker run -d --name nginx\ # 容器名称-p 80:80\ # 端口映射--restart=always \ # 自动重启
-v /data/myapp/nginx/conf.d:/etc/nginx/conf.d \ # 配置目录映射
镜像名 # 镜像名称
vim /etc/nginx/conf.d/default.conf
server {
# 前端服务端口
listen 80;
listen [::]:80;
server_name 192.1.1.31;
# 首页
location / {root /opt/sv-webapp/dist/;index index.html index.htm;
}# 错误页
error_page 500 502 503 504 /50x.html;
location = /50x.html {root /opt/sv-webapp/dist/;
}# 后端
location /api/v1/ {proxy_set_header Host \$host;proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;proxy_pass http://192.1.1.31:30521/api/v1/;
}
location /api/ {proxy_set_header Host \$host;proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;proxy_pass http://192.1.1.31:32004/api/;
}
}
Harbor

Harbor 是一个开源的企业级容器镜像 registry,主要用于存储、管理和分发容器镜像。它是基于 Docker Registry 的扩展,提供了更多的功能和管理工具,旨在帮助组织安全和高效地管理其容器化应用程序。以下是 Harbor 的一些关键特性和功能:
-
访问控制:Harbor 提供基于角色的访问控制(RBAC),允许用户和团队根据角色定义访问权限,确保安全性。
-
身份验证:支持多种身份验证方式,包括 LDAP、AD 和 OAuth 等,可以轻松与现有的身份管理系统集成。
-
镜像签名:支持 Notary 进行镜像签名,确保推送的镜像的完整性和来源,防止恶意镜像的使用。
-
镜像版本管理:Harbor 支持对镜像的版本进行管理,包括镜像的标记和删除,可以方便地管理应用程序的不同版本。
-
镜像扫描:集成了安全扫描工具(如 Clair),允许在使用镜像之前检测和识别潜在的安全漏洞。
-
高可用性:Harbor 支持高可用性集群部署,可以通过负载均衡实现容器镜像的高可用性和容错能力。
-
多种存储后端支持:Harbor 支持多种后端存储,例如 NFS、S3、Google Cloud Storage 等,用户可以根据需求选择适合的存储解决方案。
-
易于使用的Web界面:Harbor 提供用户友好的Web界面,通过可视化方式简化容器镜像的管理,让用户可以轻松进行镜像的上传、下载和搜索。
-
API 和 CLI支持:Harbor 提供丰富的RESTful API和命令行工具,方便开发者和运维人员进行自动化管理和集成。
-
支持图形化界面:用户可以通过一个统一的界面浏览、管理和共享容器镜像,提升了操作的便利性。
-
多项目支持:Harbor 允许用户在同一个默认实例中创建多个项目,每个项目可以配置不同的访问权限和策略,支持多团队协作。
部署Docker Compose
apt install docker-compose
docker-compose version
部署harbor
#下载harbor压缩包
wget https://github.com/goharbor/harbor/releases/download/v2.4.3/harbor-offline-installer-v2.4.3.tgz
#把harbor解压至/usr/local目录下
tar xf harbor-offline-installer-v2.4.3.tgz -C /usr/local/
#进入harbor目录
cd /usr/local/harbor/
cp harbor.yml.tmpl harbor.yml
vim harbor.yml
hostname: harbor_node01.example.com //这里的主机名换成本机的主机名或IP地址
#https: //把https这行及子行都注释掉,因为没有弄ssl证书加密# https port for harbor, default is 443#port: 443# The path of cert and key files for nginx#certificate: /your/certificate/path#private_key: /your/private/key/path
./install.sh
Mongo

MongoDB 是一个开源的 NoSQL 数据库,专注于高性能、高可用性和可扩展性。与传统的关系型数据库不同,MongoDB 使用文档导向的数据存储方式,以 JSON 类似的 BSON(Binary JSON)格式存储数据,允许结构化和半结构化数据的灵活存储。以下是 MongoDB 的一些关键特性和功能:
- 文档存储:数据以文档的形式存储,每个文档都可以拥有不同的结构(字段和类型),适合动态变化的需求。这种方式使得开发者可以灵活地定义数据模式。
- 横向扩展:MongoDB 支持分片(Sharding),可以方便地通过增加更多的服务器来扩展数据存储和处理能力。这使其适合处理大规模数据集和高并发的应用场景。
- 高可用性:通过Replica Set(副本集),MongoDB 提供了内置的高可用性和故障恢复解决方案。副本集允许多个副本节点同步数据,确保数据的冗余和可用性。
- 灵活的查询语言:MongoDB 使用一种基于 JSON 的查询语言,支持丰富的查询操作,如过滤、排序、聚合等,能够满足复杂查询的需求。
- 强大的索引功能:MongoDB 支持多种类型的索引(如单字段、复合索引、地理空间索引等),可以优化查询性能并加快数据检索速度。
- 聚合框架:MongoDB 提供了一种强大的聚合框架,允许用户以声明方式进行数据处理和分析,适合进行复杂的数据操作和计算。
- 地理空间支持:MongoDB 具备地理空间数据处理能力,支持地理位置查询和计算,适用于位置服务和地图应用等场景。
- 副本集和分片的自动故障转移:在发生故障时,MongoDB 可以自动进行故障转移,确保服务的持续可用性。
- 丰富的驱动程序支持:MongoDB 提供了多种编程语言的驱动程序(如 Java、Python、Node.js 等),方便开发者将 MongoDB 集成到不同的应用程序中。
- 社区和生态系统:MongoDB 拥有活跃的社区和丰富的生态系统,提供各种工具和扩展,帮助开发者更高效地使用和管理数据库。
拉取镜像
docker pull mongo:4.4
配置
vim mongod.conf
systemLog:# MongoDB发送所有日志输出的目标指定为文件destination: file# mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径path: "/var/log/mongodb/mongodb.log"# 当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾。logAppend: true
storage:# mongod实例存储其数据的目录。dbPath: "/data/db"journal:#启用或禁用持久性日志以确保数据文件保持有效和可恢复。enabled: true
net:# 服务实例绑定的IP,默认是localhost(多个ip用逗号分隔)bindIp: 0.0.0.0#绑定的端口,默认是27017port: 27017
启动
docker run --name mongo\ # 容器名称-p 27017:27017 \ # 端口映射
-v /app/mongo/data:/data/db \ # 数据目录映射
-v /app/mongo/logs:/var/log/mongodb \
-v /app/mongo/mongod.conf:/etc/mongod.conf \
-d mongo --auth # 镜像名称
配置
docker exec -it mongo mongo admin
# 创建一个名为 admin,密码为 123456 的用户。
db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
# 尝试使用上面创建的用户信息进行连接。
db.auth('admin', '123456')
MongoDB 6.0 及以上版本使用以下命令:
docker exec -it mongo mongosh admin
相关文章:
常用开发组件Docker部署保姆级教程
说明 本文总结了一些常用组件的Docker启动命令及过程,在开发过程中只需花费数分钟下载和配置即可完美使用这些服务。 Mysql MySQL 是一种开源关系数据库管理系统(RDBMS),目前由 Oracle 公司维护。MySQL 以其高性能、可靠性和易用…...
MySql高级视频笔记
索引 索引 : 是帮助MySql高效查询数据的数据结构 优势&劣势 优势: 提高数据检索的效率, 降低数据库的IO成本通过索引列队数据进行排序, 降低数据的排序成本, 降低CPU的消耗 劣势: 索引维护了主键信息, 并指向表中数据记录, 也是占用磁盘空间的索引提高了查询效率, 但索引也…...
二十二、状态模式
文章目录 1 基本介绍2 案例2.1 Season 接口2.2 Spring 类2.3 Summer 类2.4 Autumn 类2.5 Winter 类2.6 Person 类2.7 Client 类2.8 Client 类的运行结果2.9 总结 3 各角色之间的关系3.1 角色3.1.1 State ( 状态 )3.1.2 ConcreteState ( 具体的状态 )3.1.3 Context ( 上下文 )3.…...
Spark环境搭建-Local
目录 Local下的角色分布: Anaconda On Linux 安装 (单台服务器) 1.下载安装 2.国内源 下载Spark安装包 1.下载 2.解压 3.环境变量 测试 监控 Local下的角色分布: 资源管理: Master:Local进程本身 Worker:L…...
使用FModel提取黑神话悟空的资产
使用FModel提取黑神话悟空的资产 前言设置效果展示闲聊可能遇到的问题没有相应的UE引擎版本选项 前言 黑神话悟空昨天上线了,解个包looklook。 本文内容比较简洁,仅介绍解包黑神话所需的专项配置,关于FModel的基础使用流程,请见…...
MYSQL定时任务使用手册
开发和管理数据库时,经常需要定时执行某些任务,比如每天备份数据库、每周统计报表等。MySQL提供了一个非常有用的工具,即事件调度器(Event Scheduler),可以帮助我们实现定时任务调度的功能。本文将介绍如何…...
SAP 预扣税配置步骤文档【Withholding Tax]
1. 配置预扣税的基本概念 预扣税是对某些支付进行扣除的税,可能适用于各种财务交易(例如,供应商支付、股息支付等)。预扣税通常包括几种类型,如个人所得税、企业所得税和其他税务种类。 2. 配置步骤 以下是一般的预…...
Ubuntu ssh配置
下面给出配置和使用ubuntu ssh的指南。 环境 Ubuntu22.04 安装Install sudo apt update && sudo apt upgrade sudo apt install openssh-server使用start service ssh status sudo systemctl enable --now ssh sudo ufw allow ssh连接Connect search "conn…...
Spring Boot OAuth2.0应用
本文展示Spring Boot中,新版本OAuth2.0的简单实现,版本信息: spring-boot 2.7.10 spring-security-oauth2-authorization-server 0.4.0 spring-security-oauth2-client 5.7.7 spring-boot-starter-oauth2-resource-server 2.7.10展示三个服务…...
Java | Leetcode Java题解之第363题矩形区域不超过K的最大数值和
题目: 题解: class Solution {public int maxSumSubmatrix(int[][] matrix, int k) {int ans Integer.MIN_VALUE;int m matrix.length, n matrix[0].length;for (int i 0; i < m; i) { // 枚举上边界int[] sum new int[n];for (int j i; j <…...
AI作画提示词(Prompts)工程:技巧与最佳实践
在人工智能领域,AI作画已成为一个令人兴奋的创新点,它结合了艺术与科技,创造出令人惊叹的视觉作品。本文将探讨在使用AI作画时的提示词工程,提供技巧与最佳实践。 理解AI作画 AI作画通常依赖于深度学习模型,尤其是生成…...
leetcode滑动窗口问题
想成功先发疯,不顾一切向前冲。 第一种 定长滑动窗口 . - 力扣(LeetCode)1456.定长子串中的元音的最大数目. - 力扣(LeetCode) No.1 定长滑窗套路 我总结成三步:入-更新-出。 1. 入:下标为…...
QT 控件使用案例
常用控件 表单 按钮 Push Button 命令按钮。Tool Button:工具按钮。Radio Button:单选按钮。Check Box:复选框按钮。Command Link Button:命令链接按钮。Dialog Button Box:按钮盒。 容器组控件(Containers) Group Box…...
【MySQL 10】表的内外连接 (带思维导图)
文章目录 🌈 一、内连接⭐ 0. 准备工作⭐ 1. 隐式内连接⭐ 2. 显式内连接 🌈 二、外连接⭐ 0. 准备工作⭐ 1. 左外连接⭐ 2. 右外连接 🌈 一、内连接 内连接实际上就是利用 where 子句对两张表形成的笛卡儿积进行筛选,之前所有的…...
【C语言】:与文件通信
1.文件是什么? 文件通常是在磁盘或固态硬盘上的一段已命名的存储区。C语言把文件看成一系列连续的字节,每个字节都能被单独的读取。这与UNIX环境中(C的 发源地)的文件结构相对应。由于其他环境中可能无法完全对应这个模型&#x…...
HTTPS通讯全过程
HTTPS通讯全过程 不得不说,https比http通讯更加复杂惹。在第一次接触https代码的时候,不知道为什么要用用证书,公钥是什么?私钥是什么?他们作用是什么?非对称加密和对称加密是啥?天,…...
建筑物规则化(实现) --- 特征边分组、重构、直角化
规则化建筑物 一、摘 要 建筑物多边形在地图综合中的两类处理模型:化简与直角化。 建筑物矢量数据来源广泛,在数据获取过程中,受GPS精确度、遥感影像分辨率或人为因素的影响,数据往往存在不同程度的误差。其中,图像分割、深度学习…...
pytorch的优化
在pytorch中,tensor是基于numpy与array的。内存共享。 在pythorch中,自定义层是继承nn.Module。将层与模型看成是模块,层与模型堪称模块,两者之间没有明确界限,定义方式与定义模型一样_init_与forward。 1、先定义全…...
React 入门第一天:从Vue到React的初体验
作为一名合格的前端工程师,怎么能只会Vue呢?学习React不仅是一场新技术的探索,更是对前端开发思维的一次重新审视。在这里,我将分享学习React的心得,希望能帮助那些和我一样从Vue转向React的开发者。 1. 为什么选择Re…...
Golang | Leetcode Golang题解之第357题统计各位数字都不同的数字个数
题目: 题解: func countNumbersWithUniqueDigits(n int) int {if n 0 {return 1}if n 1 {return 10}ans, cur : 10, 9for i : 0; i < n-1; i {cur * 9 - ians cur}return ans }...
网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
Cursor实现用excel数据填充word模版的方法
cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...
汽车生产虚拟实训中的技能提升与生产优化
在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
视频字幕质量评估的大规模细粒度基准
大家读完觉得有帮助记得关注和点赞!!! 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用,因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型(VLMs)在字幕生成方面…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
