开源进销存ERP系统源码部署教程!小白也能轻松上手
每天对着满屏的Excel表格埋头苦干,手动盘点,不仅眼睛看花,还总免不了按错一个数字,导致月底对账“丈二和尚摸不着头脑”。市面上的SaaS进销存软件五花八门,但年费像个无底洞。今天,我们就来聊聊开源进销存ERP系统部署教程。开源意味着永久使用、数据完全私有、功能随心所欲。更重要的是,借助于现代的“容器化”技术,哪怕是毫无编程基础的纯小白,只要跟着本教程一步步操作,让你也能让自己拥有的一套企业级ERP系统!
源码及演示:c.csymzs.top
技术栈选型:2026年最稳的组合方案
选对技术栈, deployment 事半功倍。以下是经过大量生产环境验证的黄金组合:
| 层级 | 推荐技术 | 选型理由 |
|---|---|---|
| 后端框架 | Spring Boot 2.7+(Java)或 Django 4.2(Python) | Spring Boot 生态最完善,适合中大型企业;Django 适合快速搭建中小型系统 |
| 前端框架 | Vue 3 + TypeScript + Element Plus | 响应式界面,PC/移动端/PDA扫码终端全适配,开发效率提升40% |
| 主数据库 | MySQL 8.0(首选) | 社区资料最丰富、生态最成熟、性能均衡,通用选型无脑选它 |
| 缓存中间件 | Redis 7.0 | 缓存商品SKU、库存数量等热点数据,查询响应时间 <200ms |
| 消息队列 | RabbitMQ / Kafka | 处理库存变更、订单通知等异步任务,确保数据一致性 |
| 搜索引擎 | Elasticsearch | 商品检索、订单查询加速 |
| Web服务器 | Nginx 1.20+ + OpenSSL 3.0 | 启用HTTP/2协议,静态资源加载速度提升50% |
| 容器化部署 | Docker + Docker Compose | 环境标准化,一键部署,告别"在我机器上能跑"的噩梦 |
数据库选型深度对比
| 数据库 | 优点 | 注意事项 | 适用场景 |
|---|---|---|---|
| MySQL 8.0 ✅ 首选 | 社区生态成熟、性能均衡、InnoDB引擎事务支持强 | 字符集需统一utf8mb4,时区设为+08:00 | 通用选型,90%的进销存场景 |
| PostgreSQL 14+ | 复杂查询强、CTE/JSON友好 | 驱动与ORM配置细节多 | 报表/复杂库存核算场景 |
| SQL Server | 与.NET生态契合 | 授权成本高、跨平台限制 | .NET项目与财务一体化 |
一句话建议:除非你有特殊需求,否则MySQL 8.0 + Redis 7.0就是你的不二之选。
硬件配置建议:花小钱办大事
| 规模 | CPU | 内存 | 磁盘 | 网络 | 日处理量 |
|---|---|---|---|---|---|
| 基础版(≤50并发) | 2核 | 4GB | 40GB SSD | ≥10Mbps | 5000单/天 |
| 标准版(≤200并发) | 4核 | 8GB | 100GB SSD | ≥50Mbps | 10000单/天 |
| 高并发版(日均2万单) | 8核 | 16GB | 500GB NVMe | ≥100Mbps | 20000单/天 |
💡 省钱技巧:阿里云ECS c6实例(4核8G)约200元/月,足以支撑日均万级订单,配合100GB SSD,年成本不到3000元,比任何SaaS都便宜十倍。
操作系统推荐 CentOS 8 / AlmaLinux 8 / Ubuntu 22.04+,Linux环境更便于自动化运维与容器化部署。
四、部署具体步骤:八步搞定,保姆级教程
第一步:环境与依赖准备
# 更新系统
sudo yum update -y # CentOS
# 或
sudo apt update && sudo apt upgrade -y # Ubuntu
# 安装基础工具
sudo yum install -y git wget curl vim net-tools
# 安装 Docker(推荐方式)
curl -fsSL https://get.docker.com | sh
sudo systemctl start docker
sudo systemctl enable docker
# 安装 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
关键参数优化(CentOS内核调优,提升并发30%+):
echo "net.core.somaxconn=65535" >> /etc/sysctl.conf
echo "net.ipv4.tcp_max_syn_backlog=65535" >> /etc/sysctl.conf
sysctl -p
第二步:获取与核验源码
从 GitHub / Gitee 官方仓库下载源码,务必核对开源协议(MIT / Apache-2.0 确保商用合规)。
# 示例:克隆项目
git clone https://gitee.com/xxx/erp-system.git
cd erp-system
git checkout release/v1.2.0 # 切到稳定分支,别用master!
目录结构通常如下:
erp-system/
├── backend/ # 后端服务(Spring Boot Jar / Django项目)
├── frontend/ # 前端工程(Vue3 + Vite)
├── sql/ # 建库建表脚本、演示数据
├── docker-compose.yml # 一键部署配置
├── docs/ # 部署手册、ER图、接口文档
└── scripts/ # 初始化脚本、Dockerfile
第三步:数据库安装与初始化 ⭐最关键
这一步是整个部署的命门,务必仔细操作。
# 方式一:Docker一键拉取MySQL 8.0(推荐)
docker run -d \
--name erp-mysql \
-e MYSQL_ROOT_PASSWORD=SecurePass123! \
-e MYSQL_DATABASE=erp_production \
-e MYSQL_CHARSET=utf8mb4 \
-e MYSQL_COLLATION=utf8mb4_general_ci \
-p 3306:3306 \
mysql:8.0
# 方式二:系统原生安装
sudo yum install -y mysql-server
sudo systemctl start mysqld
sudo systemctl enable mysqld
创建业务库与最小权限账号(安全最佳实践):
-- 登录MySQL
mysql -u root -p
-- 创建数据库(字符集统一!)
CREATE DATABASE erp_production CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
-- 创建专用账号(按库授权,禁止root远程登录)
CREATE USER 'erp_user'@'%' IDENTIFIED BY 'YourStrongPassword@2026';
GRANT ALL PRIVILEGES ON erp_production.* TO 'erp_user'@'%';
FLUSH PRIVILEGES;
-- 导入结构与字典数据
USE erp_production;
SOURCE /path/to/erp-system/sql/schema.sql;
SOURCE /path/to/erp-system/sql/dict.sql;
-- 可选:导入演示数据(生产环境慎用!)
-- SOURCE /path/to/erp-system/sql/demo_data.sql;
性能调优参数(my.cnf添加):
[mysqld]
innodb_buffer_pool_size = 5600M # 物理内存的70%
innodb_log_file_size = 512M
slow_query_log = 1
long_query_time = 2
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
第四步:后端编译与构建
Java(Spring Boot)项目:
cd backend
# 确保JDK 17+、Maven 3.8+
mvn -U clean package -DskipTests
# 产物:target/app.jar
Python(Django)项目:
cd backend
pip install -r requirements.txt
python manage.py migrate --force
python manage.py collectstatic
PHP(Laravel/ThinkPHP)项目:
cd backend
composer install --no-dev -o
cp .env.example .env
# 编辑.env配置数据库连接
php artisan migrate --force
第五步:前端打包与静态资源部署
cd frontend
# 安装依赖
npm ci # 或 pnpm i --frozen-lockfile
# 生产构建
npm run build
# 产物:dist/ 目录
第六步:Docker Compose一键编排 ⭐核心部署
创建 docker-compose.yml:
version: '3.8'
services:
erp-db:
image: mysql:8.0
container_name: erp-mysql
environment:
MYSQL_ROOT_PASSWORD: SecurePass123!
MYSQL_DATABASE: erp_production
MYSQL_CHARSET: utf8mb4
volumes:
- ./sql/init.sql:/docker-entrypoint-initdb.d/init.sql
- mysql_data:/var/lib/mysql
restart: always
networks:
- erp-net
erp-redis:
image: redis:7.0
container_name: erp-redis
command: redis-server --requirepass RedisPass123!
volumes:
- redis_data:/data
restart: always
networks:
- erp-net
erp-backend:
build: ./backend
container_name: erp-backend
depends_on:
- erp-db
- erp-redis
environment:
SPRING_DATASOURCE_URL: jdbc:mysql://erp-db:3306/erp_production?useUnicode=true&characterEncoding=utf8mb4&serverTimezone=Asia/Shanghai
SPRING_REDIS_HOST: erp-redis
SPRING_REDIS_PASSWORD: RedisPass123!
ports:
- "8080:8080"
restart: always
networks:
- erp-net
erp-frontend:
image: nginx:alpine
container_name: erp-nginx
volumes:
- ./frontend/dist:/usr/share/nginx/html
- ./nginx/conf.d:/etc/nginx/conf.d
ports:
- "80:80"
- "443:443"
depends_on:
- erp-backend
restart: always
networks:
- erp-net
volumes:
mysql_data:
redis_data:
networks:
erp-net:
driver: bridge
一键启动:
docker-compose up -d
访问 http://你的服务器IP,系统初始化引导页面即出现!
第七步:系统初始化与配置
- 创建管理员账号:首次访问自动跳转设置向导
- 配置企业信息:公司名称、仓库、货币单位
- 权限角色划分:采购员、库管员、财务人员——基于RBAC权限模型,数据隔离与操作审计一步到位
- 导入基础数据:商品清单、供应商名录、客户清单(支持Excel/CSV批量导入)
第八步:安全加固与运维保障
| 项目 | 操作 | 说明 |
|---|---|---|
| HTTPS | Let’s Encrypt + Certbot 自动续期 | 严格HTTPS,HSTS + 现代TLS |
| 防火墙 | 仅暴露443端口,内网端口限制访问 | firewall-cmd --add-port=443/tcp --permanent |
| 数据备份 | 每日全量 + Binlog实时增量 | mysqldump 定时任务 + 跨可用区快照 |
| 日志监控 | ELK栈集中存储 + Prometheus监控 | CPU >85%触发告警,推送企业微信 |
| 定期更新 | 关注GitHub Release,及时合并安全补丁 | 漏洞密度控制 <0.1/KLOC |

写在最后
今天,开源进销存ERP早已不是"能不能用"的问题,而是"好不好用"的问题。一套成熟的开源系统,配合Docker一键部署,小白也能上线,老手可以定制。技术从来不应成为管理的壁垒。在这个开源力量蓬勃发展的时代,哪怕你只是一个人、一间小店,也能凭借这些顶尖的免费工具,拥有堪比大企业的数字化战斗力。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)