Docker部署常用开发组件(保姆级教程)

news2024/11/28 2:43:51

说明

本文总结了一些常用组件的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/dist

RUN 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.conf

EXPOSE 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
  #绑定的端口,默认是27017
  port: 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2062641.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Qt4代码实现下面的界面

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

AI预测体彩排3采取888=3策略+和值012路或胆码测试8月22日升级新模型预测第59弹

经过近60期的测试,当然有很多彩友也一直在观察我每天发的预测结果,得到了一个非常有价值的信息,那就是9码定位的命中率非常高,已到达90%的命中率,这给喜欢打私菜的朋友提供了极高价值的预测结果~当然了,大部…

【C++】map、set基本用法

欢迎来到我的Blog,点击关注哦💕 前言: C的STL已经学习很大一部分了,接下来介绍的是map set是c的是两种关联容器。 简单介绍 map set: 两者都使用红黑树作为底层数据结构来存储元素。map是一种键值对容器,其中每个键…

pip package查询网站(性质类似于npmjs.com)

网址:PyPI The Python Package Index python 的依赖包查询网站 就和 node 的 npmjs.com 一样

SD-WAN采用哪种网络技术?如何自建SD-WAN组网?

SD-WAN(Software-Defined Wide Area Network,软件定义广域网)是一种基于软件的网络架构,它利用软件定义网络(SDN)的技术来管理广域网(WAN)的连接和服务。SD-WAN的主要目的是提高网络…

四大LLM模型,预训练和后训练新范式详解

导读 最初,大语言模型LLM的训练过程只关注于预训练,但如今已经扩展到包含预训练和后训练两个阶段。后训练通常包括监督指令微调和对齐,这一方法在ChatGPT发布后广泛流行! 翻译自:https://magazine.sebastianraschka.com/p/new-l…

基于距离度量学习的异常检测:一种通过相关距离度量的异常检测方法

异常通常被定义为数据集中与大多数其他项目非常不同的项目。或者说任何与所有其他记录(或几乎所有其他记录)显著不同的记录,并且与其他记录的差异程度超出正常范围,都可以合理地被认为是异常。 例如上图显示的数据集中,我们有四个簇(A、B、C和D)和三个位于这些簇之外的点:P1、P…

领夹麦克风哪个牌子的好,2024年无线领夹麦克风十大品牌推荐

在追求高质量音频的时代,一款性能稳定、音质出色的无线领夹麦克风,不仅能够提升内容创作的品质,也是赠予播客爱好者、视频博主的佳礼。然而,市场上的无线领夹麦克风品种繁多,其中不乏一些厂商为追求低成本,…

微软Phi-3.5系列亮相:性能超越Gemini 1.5和GPT-4o

前沿科技速递🚀 在人工智能领域,微软从未停止过创新的步伐。尽管与OpenAI的合作为微软带来了显著的成功,但他们显然不满足于此。近日,微软再次在AI领域引发关注,正式发布了三款全新的Phi-3.5系列AI模型。这些模型不仅在…

构建基于LLM的应用程序——使用LLM的搜索和推荐引擎

在上一章中,我们介绍了构建对话应用程序的核心步骤。我们从一个基础的聊天机器人开始,然后逐步添加了更复杂的组件,例如记忆、非参数化知识和外部工具。借助LangChain的预构建组件以及Streamlit的UI渲染,这一切都变得相对简单。尽…

C++ TinyWebServer项目总结(6. 高级 I/O 函数)

文件描述符 文件描述符(File Descriptor, FD)是操作系统中用于访问文件的一个抽象概念。它是一个非负整数,通常由操作系统分配,用来标识被打开的文件或输入输出资源(如管道、网络连接等)。文件描述符在操作…

苍穹外卖之员工管理、分类管理

新增员工 新增员工 需求分析和设计 产品原型: 接口设计: 数据库设计: 代码开发 根据新增员工接口设计对应的DTO: 这是实体类属性,但是由于属性差异过大,使用DTO封装数据为: 当前端提交的数据…

java常见面试题汇总

🌏个人博客主页:意疏-CSDN博客 希望文章能够给到初学的你一些启发~ 如果觉得文章对你有帮助的话,点赞 关注 收藏支持一下笔者吧~ 阅读指南: 开篇说明一、封装 继承 多态1.封装2.继承3.多态 二、什么是重载…

非极大值抑制(Non-Maximum Suppression,简称 NMS)

本文为专栏《Python三维点云实战宝典》系列文章,专栏介绍地址“【python三维深度学习】python三维点云从基础到深度学习_python3d点云从基础到深度学习-CSDN博客”。配套书籍《人工智能点云处理及深度学习算法》提供更加全面和系统的解析。 非极大值抑制&#xff08…

揭开数字化转型的神秘面纱

​在当今快速发展的时代,数字化转型已成为众多企业和组织追求的目标。然而,对于许多人来说,数字化转型仍然笼罩着一层神秘的面纱。本研究报告旨在揭开数字化转型的神秘面纱,深入探讨其内涵、重要性以及实施策略。 一、数字化转型的…

开始尝试从0写一个项目--后端(四)

借出,归还,管理 学生和管理员登录分离 学生登录到用户界面 管理员到后台 后台和用户分离 添加代码 sems-server/src/main/java/com/ljc/controller/user/UserStudentController.java package com.ljc.controller.user;import com.ljc.constant.Jwt…

【PyCharm】配置“清华镜像”地址(pip源)

文章目录 前言一、清华镜像是什么?二、pip是什么?三、具体步骤1.复制镜像地址2.打开PyCharm,然后点击下图红框的选项3.在弹出的新窗口点击下图红框的选项进行添加4.在URL输入框中粘贴第一步复制的地址,名字可以不更改,…

leetcode371. 两整数之和,位运算

leetcode371. 两整数之和 给你两个整数 a 和 b ,不使用 运算符 和 - ​​​​​​​,计算并返回两整数之和。 示例 1: 输入:a 1, b 2 输出:3 示例 2: 输入:a 2, b 3 输出:5 …

【Axure高保真原型】中继器表格——标签使用情况案例

今天和大家分享中继器表格——标签使用情况案例的原型模板,效果包括: 模糊搜索——输入标签编号或者标签名称,可以快速查找对应的数据 排序——点击排序按钮,可以按升序或降序排列 分页——点击上拉列表,可以选择表格…

gpu压力测试工具----gpu_burn的使用

背景: 我们平时想做gpu的压力测试,需要一个简单的可以一键执行的工具来测试,主要要来打满gpu的使用率和显存,这里以8卡4090机器为测试机,驱动版本550.54.14,cuda版本12.3。 开源方案: gpu-burn一…