news 2026/6/10 15:08:32

容器云练习-基于Docker Compose编排ERP管理系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
容器云练习-基于Docker Compose编排ERP管理系统

一、什么是EPR管理系统,为什么要用ERP系统

1.ERP 就像公司的“中央大脑”,把各个部门(财务、采购、销售、仓库、人事等)的数据和流程全部打通,避免信息孤岛。

2.没有ERP时:前台写了个小票,后厨不知道小票内容,只能凭感觉加料,仓库也只能自己记账。当小票丢了、原料没了,这时候也没人知道,会出现信息不对等之类的问题,最后会导致亏钱。

3.有了ERP后:当顾客下单后,系统自动扣除库存数量。当库存数量低于警戒线后,自动生成采购单发给供应商。同时销售数据可以实时更新,月底自动计算成本、利润、员工提成。

二、资源准备

1.两台linux服务器,这里我用的是CentOS7

2.部署好的k8s集群,在本次实验中使用的是master节点

3.开放8080、6379、9999、3306端口

三、实验步骤

步骤1:获取资源包

#从本地服务器下载资源包 curl -O http://192.168.75.10/yum/ERP.tar.gz #解压资源包 tar -xzvf ERP.tar.gz #切换至解压后的目录 cd ERP #查看目录文件 tree ERP ├── app.jar #ERP的java可执行包 ├── CentOS_7.9.2009.tar #CentOS7的基本镜像 ├── jsh_erp.sql #ERP的数据库初始化文件 ├── nginx #nginx相关配置文件 │ ├── app.tar.gz #ERP的前端页面资源 │ └── nginx.conf #nginx的代理文件 └── yum #需要的安装包

步骤2:配置样本源

cat > local.repo << EOF [yum] name=yum gpgcheck=0 enable=1 baseurl=file:///opt/yum EOF

步骤3:加载基础镜像

#加载基础镜像 docker load -i CentOS_7.9.2009.tar #查看是否成功 docker image ls | grep centos centos centos7.9.2009 eeb6ee3f44bd 4 years ago 204MB

步骤4:构建数据库镜像文件erp-mysql:v1.0

cat > Dockerfile-mariadb << EOF #加载原始镜像 FROM centos:centos7.9.2009 #作者名 MAINTAINER 17-60 #配置样本源 RUN rm -rf /etc/yum.repos.d/* COPY local.repo /etc/yum.repos.d/local.repo COPY yum /opt/yum #配置数据库 ENV LC_ALL en_US.UTF-8 COPY init.sh /opt/init.sh COPY jsh_erp.sql /opt/jsh_erp.sql RUN yum install -y mariadb mariadb-server RUN chmod a+x /opt/init.sh RUN /opt/init.sh #声明端口 EXPOSE 3306 #开启命令 CMD ["mysqld_safe","--user=root"] EOF
#创建数据库初始化脚本 cat > init.sh << EOF #!/bin/bash mysql_install_db --user=root mysqld_safe --user=root & sleep 8 mysqladmin -uroot -p '123456' mysql -uroot -p123456 -e "grant all on *.* to 'root'@'%' identified by '123456';flush privileges;" mysql -uroot -p 123456 -e "create databases jsh_erp; use jsh_erp; source /opt/jsh_rep.sql;" EOF
#创建镜像 docker build -t erp-mysql:v1.0 -f Dockerfile-mariadb .

步骤5:构建内存键值数据库erp-redis:v1.0镜像

#创建Dockerfile_redis cat > Dockerfile_redis << EOF FROM centos:centos7.9.2009 MAINTAINER 17-60 RUN rm -rf /etc/yum.repos.d/* COPY local.repo /etc/yum.repos.d/local.repo COPY yum /opt/yum RUN yum install redis -y RUN sed -i 's/127.0.0.1/0.0.0.0/g' /erc/redis.conf RUN sed -i 's/protected-mode yes/protected-mode no/g' /etc/redis.conf RUN echo 'requirepass 123456' >> /etc/redis.conf EXPOSE 6379 CMD ["/usr/bin/redis-server","/etc/redis.conf"] EOF
#创建镜像 docker build -t erp-redis:v1.0 -f Dockerfile-redis .

步骤6:构建web服务器erp-nginx:v1.0镜像

cat > Dockerfile-nginx << EOF FROM centos:centos7.9.2009 MAINTAINER 17-60 RUN rm -rf /etc/yum.repos.d/* COPY local.repo /etc/yum.repos.d/local.repo COPY yum /opt/yum RUN yum install -y nginx ADD nginx/app.tar.gz / COPY nginx/nginx.conf /etc/nginx/nginx.conf EXPOSE 80 CMD ["nginx","-g","daemon off;"] EOF
#创建镜像 docker build -t erp-nginx:v1.0 -f Dockerfile-nginx .

步骤7:构建erp服务erp-server:v1.0镜像

#创建Dockerfile-erp cat > Dockerfile-erp << EOF FROM centos:centos7.9.2009 RUN rm -rf /etc/yum.repos.d/* COPY local.repo /etc/yum.repos.d/local.repo COPY yum /opt/yum RUN yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel COPY app.jar /jshERP_boot/ COPY start.sh /opt/start.sh RUN chmod a+x /opt/start.sh EXPOSE 9999 CMD ["/bin/bash","/opt/start.sh"] EOF
#创建启动脚本 cat > start.sh << EOF #!/bin/bash nohup java -jar /jsh_ERP-boot/app.jar EOF
#创建镜像 docker build -t erp-server:v1.0 -f Dockerfile-erp .

步骤8:构建docker-compose编排程序

#创建docker-compose cat > docker-compose << EOF version: '3' services: erp-mysql: image: erp-mysql:v1.0 container_name: erp-mysql ports: - 3306:3306 restart: always erp-redis: image: erp-redis:v1.0 container_name: erp-redis ports: - 6379:6379 restart: always erp-server: image: erp-server:v1.0 container_name: erp-server environment: DB_USERNAME: root DB_PASSWORD: 123456 REDIS_HOST: erp-redis REDIS_PASSWORD: 123456 links: - erp-mysql - erp-redis ports: - 9999:9999 restart: always erp-nginx: image: erp-nginx:v1.0 container_name: erp-nginx ports: - 8080:80 links: - erp-server:erp-server restart: always EOF
#启动编排程序 docker-compose up -d
#验证是否成功 docker ps | grep erp f626a5a6843a erp-nginx:v1.0 "nginx -g 'daemon of…" 3 hours ago Up 3 hours 0.0.0.0:8080->80/tcp, :::8080->80/tcp erp-nginx 93d94d819a25 erp-server:v1.0 "/bin/bash /opt/star…" 3 hours ago Up 1 second 0.0.0.0:9999->9999/tcp, :::9999->9999/tcp erp-server 91cdc9f55ec1 erp-mysql:v1.0 "mysqld_safe --user=…" 3 hours ago Up 3 hours 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp erp-mariadb b1101ff8c93f erp-redis:v1.0 "/usr/bin/redis-serv…" 3 hours ago Up 3 hours 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp erp-redis

到此实验完成

四、最终验证

登录http://<服务器IP>:8080

账号:admin

密码:123456

登录成功说明成功部署了

五、总结

本次实验通过Docker + docker-compose技术,将jshERP系统从零部署到Centos7的k8s服务上,实现经销管理系统的容器化部署

容器名镜像端口技术栈职责
erp-mysqlerp-mysql:v1.03306Mariadb数据持久化存储
erp-rediserp-redis:v1.06379Redis高速缓存加速
erp-nginxerp-nginx:v1.08080-80Nginx前端页面展示 + 反向代理
erp-servererp-server:v1.09999Java + Spring Boot后端业务逻辑处理
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 14:24:52

身边事伍福家园获点赞

伍福家园获得点赞&#xff0c;与其践行的伍福理念、提供的特色产品以及开展的相关活动都紧密相关。伍福理念传递正能量伍福家园计划以伍福人生为目标&#xff0c;从自我心服开始&#xff0c;从家庭做起&#xff0c;带动社区&#xff0c;融聚社会更多有识之士&#xff0c;传递伍…

作者头像 李华
网站建设 2026/6/10 14:21:55

莱香肩颈功夫:内外同调的肩颈养护逻辑

在当代&#xff0c;长期久坐、低头看电子设备已成为常态&#xff0c;肩颈僵硬、酸痛、头晕等亚健康问题愈发普遍。莱香肩颈功夫作为一款聚焦肩颈康养的项目&#xff0c;核心逻辑是中医经络理论 植萃发酵技术 内外双调养护&#xff0c;并非简单的肌肉放松按摩&#xff0c;下面…

作者头像 李华
网站建设 2026/6/10 14:19:08

客户沟通会议记录转写实战评测:7款录音提取文字做工作总结横评

做客户沟通和客户分析的朋友都知道&#xff0c;每天最头疼的不是拜访客户&#xff0c;而是拜访完之后的整理工作。一场1小时的客户访谈&#xff0c;录音文件往往要花2-3小时才能听完、记完、整理成结构化报告。遇到多方言客户、技术术语、会议中多人同时发言的情况&#xff0c;…

作者头像 李华
网站建设 2026/6/10 14:17:14

2026 年,海南财税公司代办十佳企业,客户口碑与续费率排名

在2026年&#xff0c;海南的财税服务圈里&#xff0c;客户口碑和续约情况成了判断一家公司靠不靠谱的两个硬指标。过去几年&#xff0c;不少海南财税公司靠着办事快、懂政策&#xff0c;把客户一点点留住。评价一好&#xff0c;老客户也愿意继续合作&#xff0c;这种反馈其实很…

作者头像 李华