1. ERP管理系统介绍
企业资源计划即 ERP (Enterprise ResourcePlanning),建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。由美国 Gartner Group 公司于1990年提出。企业资源计划是 MRP II(企业制造资源计划)下一代的制造业系统和资源计划软件。除了MRP II 已有的生产资源计划、制造、财务、销售、采购等功能外,还有质量管理,实验室管理,业务流程管理,产品数据管理,存货、分销与运输管理,人力资源管理和定期报告系统。在我国 ERP 所代表的含义已经被扩大,用于企业的各类软件,已经统统被纳入 ERP的范畴。它跳出了传统企业边界,从供应链范围去优化企业的资源,是基于网络经济时代的新一代信息系统。它主要用于改善企业业务流程以提高企业核心竞争力。
ERP 是由美国计算机技术咨询和评估集团 Gartner Group Inc提出的一种供应链的管理思想。企业资源计划是指建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。ERP系统支持离散型、流程型等混合制造环境,应用范围从制造业扩展到了零售业、服务业、银行业、电信业、政府机关和学校等事业部门,通过融合数据库技术、图形用户界面、第四代查询语言、客户服务器结构、计算机辅助开发工具、可移植的开放系统等对企业资源进行了有效的集成。
2. 容器化部署MariaDB
编写Dockerfile构建镜像erp-mysql:v1.0,要求使用
centos7.9.2009镜像作为基础镜像,完成MariaDB数据库的安装
设置root用户的密码为tshoperp,新建数据库jsh_erp并导入数据库文件jsh_erp.sql
并设置MariaDB数据库开机自启。
(1)基础环境准备
[root@k8s-master-node1 ~]# tar -zxvf ERP.tar.gz
[root@k8s-master-node1 ~]# docker load -i ERP/CentOS_7.9.2009.tar
[root@k8s-worker-node1 ~]# cd ERP/
[root@k8s-worker-node1 ERP]# vi local.repo
[erp]
name=erp
baseurl=file:///root/yum
gpgcheck=0
enabled=1
(2)编写init.sh脚本:
[root@k8s-worker-node1 ERP]# vi mysql_init.sh
#!/bin/bash
mysql_install_db --user=root
mysqld_safe --user=root &
sleep 8
mysqladmin -u root password 'tshoperp'
mysql -uroot -ptshoperp -e "grant all on *.* to 'root'@'%' identified by 'tshoperp'; flush privileges;"
mysql -uroot -ptshoperp -e " create database jsh_erp;use jsh_erp;source /opt/jsh_erp.sql;"
(3)编写Dockerfile:
[root@k8s-worker-node1 ERP]# vi Dockerfile-mariadb
FROM centos:centos7.9.2009
MAINTAINER Chinaskills
RUN rm -rf /etc/yum.repos.d/*
COPY local.repo /etc/yum.repos.d/
COPY yum /root/yum
ENV LC_ALL en_US.UTF-8
RUN yum -y install mariadb-server
COPY jsh_erp.sql /opt/
COPY mysql_init.sh /opt/
RUN bash /opt/mysql_init.sh
EXPOSE 3306
CMD ["mysqld_safe","--user=root"]
[root@k8s-master-node1 ERP]# docker build -t erp-mysql:v1.0 -f Dockerfile-mariadb .
3. 容器化部署Redis
编写 Dockerfile 文件构建 redis 镜像,要求基于 centos 完成 Redis 服务的安装 和配置,并设置服务开机自启。
编写 Dockerfile构建镜像 erp-redis:v1.0,要求使用 centos7.9.2009镜像作为基础镜像
完成 Redis服务的安装,修改其配置文件关闭保护模式,并设置 Redis 服务开机自启
(1)编写Dockerfile
[root@k8s-worker-node1 ERP]# vi Dockerfile-redis
FROM centos:centos7.9.2009
MAINTAINER Chinaskills
RUN rm -rf /etc/yum.repos.d/*
COPY local.repo /etc/yum.repos.d/
COPY yum /root/yum
RUN yum -y install redis
RUN sed -i 's/127.0.0.1/0.0.0.0/g' /etc/redis.conf && \
sed -i 's/protected-mode yes/protected-mode no/g' /etc/redis.conf
EXPOSE 6379
CMD ["/usr/bin/redis-server","/etc/redis.conf"]
[root@k8s-worker-node1 ERP]# docker build -t erp-redis:v1.0 -f Dockerfile-redis .
4. 容器化部署前端服务
编写 Dockerfile 文件构建 nginx 镜像,要求基于 centos 完成 Nginx 服务的安 装和配置,并设置服务开机自启。
编写 Dockerfile 构建镜像 erp-nginx:v1.0,要求使用 centos7.9.2009 镜像作为 基础镜像完成 Nginx 服务的安装
使用提供的 app.tar.gz 和 nginx.conf 启动 Nginx 服务,并设置开机自启。
(1)编写Dockerfile
[root@k8s-worker-node1 ERP]# vi Dockerfile-nginx
FROM centos:centos7.9.2009
MAINTAINER Chinaskills
RUN rm -rf /etc/yum.repos.d/*
COPY local.repo /etc/yum.repos.d/
COPY yum /root/yum
RUN yum -y install nginx
COPY nginx/nginx.conf /etc/nginx/nginx.conf
COPY nginx/app.tar.gz /
RUN tar -zxvf /app.tar.gz -C /
RUN /bin/bash -c 'echo init ok'
EXPOSE 80
CMD ["nginx","-g","daemon off;"]
[root@k8s-worker-node1 ERP]# docker build -t erp-nginx:v1.0 -f Dockerfile-nginx .
5. 容器化部署ERP服务
编写 Dockerfile 文件构建 erp 镜像,要求基于 centos 完成 JDK 环境和 ERP 服务的安装与配置,并设置服务开机自启。
编写 Dockerfile 构建镜像 erp-server:v1.0,要求使用centos7.9.2009 镜像作为 基础镜像
完成 JDK 环境的安装,启动提供的 jar 包,并设置服务开机自启。
(1)编写Dockerfile
[root@k8s-worker-node1 ERP]# vi Dockerfile-erp
FROM centos:centos7.9.2009
MAINTAINER Chinaskills
COPY app.jar /root
ADD yum /root/yum
RUN rm -rfv /etc/yum.repos.d/*
COPY local.repo /etc/yum.repos.d/local.repo
RUN yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
EXPOSE 9999
CMD java -jar /root/app.jar
[root@k8s-worker-node1 ERP]# docker build -t erp-service:v1.0 -f Dockerfile-erp .
6. 编排部署ERP
编写 docker-compose.yaml 文件,要求使用镜像 mysql、redis、nginx和 erp完 成 ERP 管理系统的编排部署。
编写 docker-compose.yaml完成 ERP管理系统的部署
要求定义 mysql、redis、 nginx和 erp 共四个 Service
分别使用镜像 erp-redis:v1.0、erp-mysql:v1.0、erpnginx:v1.0 和erp-server:v1.0,并将 nginx 服务的 80 端口映射到宿主机的 8888 端 口。
(1)编写docker-compose.yaml
[root@k8s-master-node1 ERP]# vi docker-compose.yaml
version: '3'
services:
erp-mysql:
restart: always
image: erp-mysql:v1.0
container_name: erp-mysql
environment:
- "MYSQL_DATABASE=jsh_erp"
ports:
- 3306:3306
erp-redis:
image: erp-redis:v1.0
container_name: erp-redis
restart: always
ports:
- 6379:6379
command: redis-server --port 6379 --requirepass tshoperp --appendonly yes
erp-server:
restart: always
image: erp-service:v1.0
container_name: erp-server
ports:
- 9999:9999
erp-web-ui:
restart: always
image: erp-nginx:v1.0
container_name: erp-web-ui
ports:
- 8888:80
(2)部署服务
[root@k8s-worker-node1 ERP]# docker-compose up -d
Creating network "erp_default" with the default driver
Creating erp-redis ... done
Creating erp-mysql ... done
Creating erp-server ... done
Creating erp-web-ui ... done
查看服务:
[root@k8s-worker-node1 ERP]# docker-compose ps
Name Command State Ports
----------------------------------------------------------------------------------------------
erp-mysql mysqld_safe --user=root Up 0.0.0.0:3306->3306/tcp,:::3306->3306/tcp
erp-redis redis-server --port 6379 - ... Up 0.0.0.0:6379->6379/tcp,:::6379->6379/tcp
erp-server /bin/sh -c java -jar /root ... Up 0.0.0.0:9999->9999/tcp,:::9999->9999/tcp
erp-web-ui nginx -g daemon off; Up 0.0.0.0:8888->80/tcp,:::8888->80/tcp
在浏览器上通过http://IP:8888访问ERP管理系统,如图1所示:
输入用户名(admin)和密码(123456)进行登录,如图2所示:
本文由博客一文多发平台 OpenWrite 发布!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。