当前位置: 首页 > news >正文

23云计算全国职业技能大赛容器云-容器编排

erp

    • 2.2.1 容器化部署 MariaDB [0.5 分]
    • 2.2.2 容器化部署 Redis [0.5 分]
    • 2.2.3 容器化部署 Nginx [0.5 分]
    • 2.2.4 容器化部署 ERP[0.5 分]
    • 2.2.5 编排部署 ERP管理系统[1 分]

2.2.1 容器化部署 MariaDB [0.5 分]

编写 Dockerfile 文件构建 mysql 镜像,要求基于 centos 完成 MariaDB 数据库的安装和配置,并设置服务开机自启。编写 Dockerfile 构建镜像 erp-mysql:v1.0,要求使用 centos7.9.2009 镜像作为基镜像,完成 MariaDB 数据库的安装,设置 root 用户的密码为 tshoperp,新建数据库 jsh_erp 并导入数据库文件 jsh_erp.sql,并设置 MariaDB 数据库开机自启。

上传centos镜像

[root@k8s-master-node1 ERP]# docker load -i CentOS_7.9.2009.tar
Loaded image: centos:centos7.9.2009
[root@k8s-master-node1 ERP]#

编写repo本地文件

[root@k8s-master-node1 ERP]# cat local.repo
[erp]
name=erp
baseurl=file:///root/yum
gpgcheck=0
enabled=1
[root@k8s-master-node1 ERP]#

编写init.sh启动脚本

[root@k8s-master-node1 ERP]# cat 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;"
[root@k8s-master-node1 ERP]#

编写dockerfile文件

[root@k8s-master-node1 ERP]# cat Dockerfile-mariadb
FROM centos:centos7.9.2009
MAINTAINER hoyeong
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]#

构建镜像

[root@k8s-master-node1 ERP]# docker build -t erp-mysql:v1.0 -f Dockerfile-mariadb .

1.镜像构建成功得 0.1 分;
2.数据库安装且导入数据成功得 0.4 分。

2.2.2 容器化部署 Redis [0.5 分]

编写 Dockerfile 文件构建 redis 镜像,要求基于 centos 完成 Redis 服务的安装和配置,并设置服务开机自启。编写 Dockerfile构建镜像 erp-redis:v1.0,要求使用 centos7.9.2009镜像作为基础镜像,完成 Redis 服务的安装,修改其配置文件关闭保护模式,并设置 Redis服务开机自启。

[root@k8s-master-node1 ERP]# cat Dockerfile-redis
FROM centos:centos7.9.2009
MAINTAINER hoyeong
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
RUN 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-master-node1 ERP]#

构建镜像

[root@k8s-master-node1 ERP]# docker build -t erp-redis:v1.0 -f Dockerfile-redis .

1.镜像构建成功的 0.1 分;
2.Redis 服务安装成功且配置正确得 0.4 分

2.2.3 容器化部署 Nginx [0.5 分]

编写 Dockerfile 文件构建 nginx 镜像,要求基于 centos 完成 Nginx 服务的安装和配置,并设置服务开机自启。编写 Dockerfile 构建镜像 erp-nginx:v1.0,要求使用 centos7.9.2009 镜像作为基础镜像,完成 Nginx 服务的安装,使用提供的 app.tar.gz 和 nginx.conf 启动Nginx 服务,并设置开机自启。

[root@k8s-master-node1 ERP]# cat Dockerfile-nginx
FROM centos:centos7.9.2009
MAINTAINER hoyeong
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-master-node1 ERP]#

构建镜像

[root@k8s-master-node1 ERP]# docker build -t erp-nginx:v1.0 -f Dockerfile-nginx .

1.镜像构建成功得 0.3 分;
2.Nginx 安装成功且配置正确得 0.2 分。

2.2.4 容器化部署 ERP[0.5 分]

编写 Dockerfile 文件构建 erp 镜像,要求基于 centos 完成 JDK 环境和 ERP 服务的安装与配置,并设置服务开机自启。编写 Dockerfile 构建镜像 erp-server:v1.0,要求使用 centos7.9.2009 镜像作为基础镜像,完成 JDK 环境的安装,启动提供的 jar 包,并设置服务开机自启。

[root@k8s-master-node1 ERP]# cat Dockerfile-erp
FROM centos:centos7.9.2009
MAINTAINER hoyeong
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-master-node1 ERP]#

构建镜像

[root@k8s-master-node1 ERP]# docker build -t erp-service:v1.0 -f Dockerfile-erp .

1.镜像构建成功得 0.3 分;
2.erp 环境安装正确得 0.2 分。

2.2.5 编排部署 ERP管理系统[1 分]

编写 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 和 erpserver:v1.0,并将 nginx 服务的 80 端口映射到宿主机的 8888 端口

1.8888 端口可以访问到 ERP 系统得 1 分

http://www.lryc.cn/news/185508.html

相关文章:

  • 哨兵(Sentinel-1、2)数据下载
  • 开启AI大模型时代|「Transformer论文精读」
  • 【小沐学前端】Windows下搭建WordPress(nginx1.25、PHP8.2、WordPress6.3、MySQL5.7)
  • centos8 Error: Failed to download metadata for repo ‘appstream‘
  • 键盘上F1至F12键的作用
  • 2023年湘潭大学OJ作业2 2023年下学期《C语言》作业0x01-数学计算 XTU OJ 1080,1081,1082,1083,1084
  • C/C++ 进程间通信system V IPC对象超详细讲解(系统性学习day9)
  • python—如何提取word中指定内容
  • 分享几个通用个人简历模板|行业通用
  • 如何正确操作封箱机
  • mysql面试题7:MySQL事务原理是什么?MySQL事务的隔离级别有哪些?
  • vue 项目打包性能分析插件 webpack-bundle-analyzer
  • C++ day2
  • 【Kafka专题】Kafka集群架构设计原理详解
  • Docker 镜像的缓存特性
  • Javascript 笔记:object
  • 【vue3】可编辑el-table
  • 一个开源的安卓相机:OpenCamera
  • 分类预测 | MATLAB实现POA-CNN鹈鹕算法优化卷积神经网络多特征分类预测
  • 学习网络编程No.7【应用层之序列化和反序列化】
  • 小谈设计模式(10)—原型模式
  • 用《斗破苍穹》的视角打开C#3 标签与反射(人物创建与斗技使用)
  • c语言进阶部分详解(详细解析字符串常用函数,并进行模拟实现(下))
  • 一文看懂光模块的工作原理
  • 基于SpringBoot的桂林旅游景点导游平台
  • 【小程序 - 加强】自定义组件、使用npm包、全局数据共享、分包_05
  • Vue.js3学习篇--Vue模板应用
  • 【软考】5.2 传输介质/通信方式/IP地址/子网划分
  • 软件测试银行项目网上支付接口调用测试实例
  • w806 adc 中断扫描通道采集