基于Docker的软件环境部署脚本,持续更新~

使用时
Ctrl+F搜索你想要的环境,如果没有你想要的环境,可以评论留言,会尽力补充。本文提供的部署脚本默认参数仅适合开发测试,请根据实际情况调节参数。
数据库
MySQL
version: '3.9'
services:mysql:image: 'mysql:8.0.35'container_name: mysql-serverrestart: alwayscommand: '--default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci'environment:- MYSQL_ROOT_PASSWORD=lY4iQ}8":zK5ports:- "3306:3306"volumes:- 'mysql_data:/var/lib/mysql'deploy:resources:limits:memory: 512Mreservations:memory: 256Mvolumes:mysql_data:
PostgreSQL (PGSQL)
version: '3.9'
services:postgres:image: 'postgres:14'container_name: postgresqlrestart: alwaysenvironment:- POSTGRES_USER=postgres- POSTGRES_PASSWORD=etRu)7E3!#O8ports:- "5432:5432"volumes:- 'postgres_data:/var/lib/postgresql/data'deploy:resources:limits:memory: 512Mvolumes:postgres_data:
SQL Server (MSSQL)
微软官方镜像源
version: '3.9'
services:mssql:image: 'mcr.microsoft.com/mssql/server:2022-latest'restart: alwaysports:- '1433:1433'environment:- MSSQL_SA_PASSWORD=Zu.d8>;8IJ7l- ACCEPT_EULA=Yvolumes:- 'mssql_data:/var/opt/mssql/data'deploy:resources:limits:memory: 2048Mvolumes:mssql_data:
Redis
简易配置
# redis.conf
# 设置最大使用内存为 512MB (默认为全部可用物理内存)
maxmemory 536870912
# 使用 Unix Domain Socket,比 TCP/IP 更快
unixsocket /tmp/redis.sock
# 设置 Redis 服务器监听端口号
port 6379
# 设置 Redis 所使用的数据库数量,默认为 16 个
databases 16
# 不限制访问来源
bind 0.0.0.0
# 设置 Redis 密码
requirepass 8*%u3Td#oV!yD9L7
docker-compose
version: '3.9'
services:redis:command: 'redis-server /etc/redis/redis.conf'image: 'redis:7.2.3-alpine'container_name: redisvolumes:- 'redis_data:/data/redis'- './conf/redis.conf:/etc/redis/redis.conf'ports:- '6379:6379'restart: alwaystty: truestdin_open: truedeploy:resources:limits:memory: 512Mvolumes:redis_data:
Elasticsearch (es)
配置文件
# elasticsearch.yml
cluster.name: es
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
docker-compose
version: '3.9'
services:elasticsearch:image: 'elasticsearch:7.17.3'container_name: elasticsearchulimits:nproc: 65535nofile:soft: 65535hard: 65535cap_add:- IPC_LOCKmem_limit: 1genvironment:- discovery.type=single-nodevolumes:- 'es_data:/usr/share/elasticsearch/data'- './config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml'ports:- '9200:9200'- '9300:9300'deploy:resources:limits:memory: 512Mvolumes:es_data:
消息队列
RabbitMQ
version: '3'
services:mq:image: 'rabbitmq:3.9-management'container_name: rabbitmqhostname: rabbitmqports:- "5672:5672"- "15672:15672"volumes:- 'rabbitmq_data:/var/lib/rabbitmq'environment:- RABBITMQ_DEFAULT_USER=guest- RABBITMQ_DEFAULT_PASS=guestdeploy:resources:limits:memory: 512Mvolumes:rabbitmq_data:
RocketMQ
配置文件
version: '3.9'
services:# https://hub.docker.com/r/xuchengen/rocketmq# 注意修改项;# 01:data/rocketmq/conf/broker.conf 添加 brokerIP1=127.0.0.1# 02:data/console/config/application.properties server.port=9009 - 如果8080端口被占用,可以修改或者添加映射端口rocketmq:image: livinphp/rocketmq:5.1.0container_name: rocketmqports:- 8080:8080- 9876:9876- 10909:10909- 10911:10911- 10912:10912volumes:- ./data:/home/app/dataenvironment:TZ: "Asia/Shanghai"NAMESRV_ADDR: "rocketmq:9876"
对象存储
MinIO
version: '3.9'
services:minio:command: 'server /data --console-address ":9001"'restart: alwaysimage: quay.io/minio/miniocontainer_name: minioenvironment:- MINIO_ROOT_USER=minio- MINIO_ROOT_PASSWORD=miniopwdvolumes:- 'minio_data:/data'ports:- '9001:9001'- '9000:9000'deploy:resources:limits:memory: 512Mvolumes:minio_data:
Spring Cloud Alibaba
Nacos
version: '3.9'
services:nacos:image: nacos/nacos-server:v2.2.0-slimcontainer_name: nacosports:- "8848:8848"environment:- PREFER_HOST_MODE=hostname- MODE=standalone- SPRING_DATASOURCE_PLATFORM=mysql- MYSQL_SERVICE_HOST=mysql- MYSQL_SERVICE_PORT=3306- MYSQL_SERVICE_DB_NAME=nacos_config- MYSQL_SERVICE_USER=root- MYSQL_SERVICE_PASSWORD=passworddeploy:resources:limits:memory: 1024Mdepends_on:- mysqlmysql:image: mysql:5.7container_name: mysqlports:- "3306:3306"environment:- MYSQL_ROOT_PASSWORD=password- MYSQL_DATABASE=nacos_configvolumes:- 'mysql_data:/var/lib/mysql'deploy:resources:limits:memory: 256Mvolumes:mysql_data:
使用自建数据库将mysql模块删除,并将Nacos数据库连接信息替换成目标数据库说明:
说明:
- 使用
nacos/nacos-server:v2.2.0-slim镜像启动 Nacos 服务,v2.2.0-slim可替换为指定版本。 - 映射容器的
8848端口到主机的8848端口,使其可通过localhost:8848访问。 - 设置了多个环境变量来连接 MySQL 数据库:
MODE=standalone:指定 Nacos 以单机模式运行。SPRING_DATASOURCE_PLATFORM=mysql:告诉 Nacos 使用 MySQL 作为数据源。MYSQL_SERVICE_HOST=mysql:指定 MySQL 服务的主机名,这里与 MySQL 服务的容器名称相对应。MYSQL_SERVICE_PORT=3306:MySQL 服务的端口号。MYSQL_SERVICE_DB_NAME=nacos_config:用于存储 Nacos 数据的数据库名称。MYSQL_SERVICE_USER=root和MYSQL_SERVICE_PASSWORD=password:MySQL 的用户名和密码。
相关文章:
基于Docker的软件环境部署脚本,持续更新~
使用时CtrlF搜索你想要的环境,如果没有你想要的环境,可以评论留言,会尽力补充。 本文提供的部署脚本默认参数仅适合开发测试,请根据实际情况调节参数。 数据库 MySQL version: 3.9 services:mysql:image: mysql:8.0.35container…...
C#上位机与欧姆龙PLC的通信08----开发自己的通讯库读写数据
1、介绍 前面已经完成了7项工作: C#上位机与欧姆龙PLC的通信01----项目背景-CSDN博客 C#上位机与欧姆龙PLC的通信02----搭建仿真环境-CSDN博客 C#上位机与欧姆龙PLC的通信03----创建项目工程-CSDN博客 C#上位机与欧姆龙PLC的通信04---- 欧姆龙plc的存储区 C#上…...
【Redis技术专区】「原理分析」探讨Redis6.0为何需要启用多线程
探讨Redis 6.0为何需要启用多线程 背景介绍开启多线程多线程的CPU核心配置IO多线程模式单线程处理方式多线程处理方式 为什么要开启多线程?充分利用多核CPU提高网络I/O效率响应现代应用需求 多线程实现启用多线程 最后总结 背景介绍 在Redis 6.0版本中,…...
simulink代码生成(六)——多级中断的配置
假如系统中存在多个中断,需要合理的配置中断的优先级与中断向量表;在代码生成中,要与中断向量表对应;中断相关的知识参照博客: DSP28335学习——中断向量表的初始化_中断向量表什么时候初始化-CSDN博客 F28335中断系…...
【Minikube Prometheus】基于Prometheus Grafana监控由Minikube创建的K8S集群
文章目录 1. 系统信息参数说明2. Docker安装3. minikube安装4. kubectl安装5. Helm安装6. 启动Kubernetes集群v1.28.37. 使用helm安装Prometheus8. 使用helm安装Grafana9. Grafana的Dashboard设定10. 设定Prometheus数据源11. 导入Kubernetes Dashboard12. 实验过程中的常见问题…...
无需翻墙|Stable Diffusion WebUI 安装|AI绘画
前言 最近终于有机会从围墙里往外看,了解到外面的世界已经有了天翻地覆的变化,感叹万千,笔者在本地mac,windows,linux,docker部署了不下20遍后,整理出来的linux极简避坑安装方案,供…...
在FC中手工创建虚拟机模板
1、Linux去除个性化信息 (1)编辑网卡配置文件,只保留以下内容(以RHEL 7为例) (2)清除主机密钥信息(开机会自动生成) (3)清除Machine IDÿ…...
OpenSSL provider
提供者 标准提供者默认提供者传统提供者FIPS 提供者基本提供者空提供者加载提供者 标准提供者 提供者是算法实现的容器。每当通过高级别 API 使用加密算法时,都会选择一个提供者。实际上是由该提供者实现执行所需的工作。OpenSSL 自带了五个提供者。在未来&#…...
pandas处理双周数据
处理文件题头格式 部门名称 年度名称 季节名称 商品名称 商品代码 品牌名称 品类名称 颜色名称 商店名称 0M 1L 1XL 27 28 29 2XL 30 31 32 33 3XL 4XL 5XL 6XL S 均1.导入包 导入源 pip install openpyxl -i https://pypi.doubanio.com/simple pip install pandas -i https…...
2023结婚成家,2024借势起飞
您好,我是码农飞哥(wei158556),感谢您阅读本文,欢迎一键三连哦。 💪🏻 1. Python基础专栏,基础知识一网打尽,9.9元买不了吃亏,买不了上当。 Python从入门到精…...
linux SHELL语句
shell编程 shell编程 一、初识shell 程序 语言 编程语言 自然语言 汉语 英语 计算机语言 c语言cjava php python go shell 编译型语言 c c java解释型语言 php python bash (不能闭源,开发难度低) 编译型语言:运行编译型语言是相对于解释型语言存在的ÿ…...
音频修复和增强软件:iZotope RX 10 (Win/Mac)中文汉化版
iZotope RX 是一款专业的音频修复和增强软件,一直是电影和电视节目中使用的行业标准音频修复工具,iZotope能够帮助用户对音频进行制作、后期合成处理、混音以及对损坏的音频进行修复,再解锁更多功能之后还能够对电影、游戏、电视之中的音频进…...
复试 || 就业day03(2023.12.29)算法篇
文章目录 前言同构字符串存在重复元素有效的字母异位词丢失的数字单词规律 前言 💫你好,我是辰chen,本文旨在准备考研复试或就业 💫文章题目大多来自于 leetcode,当然也可能来自洛谷或其他刷题平台 💫欢迎大…...
处理urllib.request.urlopen报错UnicodeEncodeError:‘ascii‘
参考:[Python3填坑之旅]一urllib模块网页爬虫访问中文网址出错 目录 一、报错内容 二、报错截图 三、解决方法 四、实例代码 五、运行截图 六、其他UnicodeEncodeError: ascii codec 问题 一、报错内容 UnicodeEncodeError: ascii codec cant encode charac…...
数据结构模拟实现LinkedList双向不循环链表
目录 一、双向不循环链表的概念 二、链表的接口 三、链表的方法实现 (1)display方法 (2)size方法 (3)contains方法 (4)addFirst方法 (5)addLast方法 …...
性能优化-如何提高cache命中率
本文主要介绍性能优化领域常见的cache的命中率问题,旨在全面的介绍提高cache命中率的方法,以供大家编写出性能友好的代码,并且可以应对性能优化领域的面试问题。 🎬个人简介:一个全栈工程师的升级之路! &am…...
分布式【4. 什么是 CAP?】
什么是 CAP? C 代表 Consistency,一致性,是指所有节点在同一时刻的数据是相同的,即更新操作执行结束并响应用户完成后,所有节点存储的数据会保持相同。 A 代表 Availability,可用性,是指系统提…...
<软考高项备考>《论文专题 - 39采购管理(3) 》
3 过程2-实施采购 3.1 问题 4W1H过程做什么获取卖方应答、选择卖方并授予合同的过程作用:选定合格卖方并签署关于货物或服务交付的法律协议。本过程的最后成果是签订的协议,包括正式合同。为什么做实际进行采购谁来做组织中的职能部门或项目经理什么时…...
Java在SpringCloud中自定义Gateway负载均衡策略
Java在SpringCloud中自定义Gateway负载均衡策略 一、前言 spring-cloud-starter-netflix-ribbon已经不再更新了,最新版本是2.2.10.RELEASE,最后更新时间是2021年11月18日,详细信息可以看maven官方仓库:org.springframework.clou…...
前端 js 基础(1)
js 结果输出 (点击按钮修改文字 ) <!DOCTYPE html> <html> <head></head><body><h2>Head 中的 JavaScript</h2><p id"demo">一个段落。</p><button type"button" onclic…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
HDFS分布式存储 zookeeper
hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架,允许使用简单的变成模型跨计算机对大型集群进行分布式处理(1.海量的数据存储 2.海量数据的计算)Hadoop核心组件 hdfs(分布式文件存储系统)&a…...
return this;返回的是谁
一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请,不同级别的经理有不同的审批权限: // 抽象处理者:审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...
c++第七天 继承与派生2
这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分:派生类构造函数与析构函数 当创建一个派生类对象时,基类成员是如何初始化的? 1.当派生类对象创建的时候,基类成员的初始化顺序 …...
在树莓派上添加音频输入设备的几种方法
在树莓派上添加音频输入设备可以通过以下步骤完成,具体方法取决于设备类型(如USB麦克风、3.5mm接口麦克风或HDMI音频输入)。以下是详细指南: 1. 连接音频输入设备 USB麦克风/声卡:直接插入树莓派的USB接口。3.5mm麦克…...
认识CMake并使用CMake构建自己的第一个项目
1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...
