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

erp

    • [2.2.1 容器化部署 MariaDB [0.5 分]](#2.2.1 容器化部署 MariaDB [0.5 分])
    • [2.2.2 容器化部署 Redis [0.5 分]](#2.2.2 容器化部署 Redis [0.5 分])
    • [2.2.3 容器化部署 Nginx [0.5 分]](#2.2.3 容器化部署 Nginx [0.5 分])
    • [2.2.4 容器化部署 ERP[0.5 分]](#2.2.4 容器化部署 ERP[0.5 分])
    • [2.2.5 编排部署 ERP管理系统[1 分]](#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镜像

bash 复制代码
[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本地文件

bash 复制代码
[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启动脚本

bash 复制代码
[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文件

bash 复制代码
[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]#

构建镜像

bash 复制代码
[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服务开机自启。

bash 复制代码
[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]#

构建镜像

bash 复制代码
[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 服务,并设置开机自启。

bash 复制代码
[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]#

构建镜像

bash 复制代码
[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 包,并设置服务开机自启。

bash 复制代码
[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]#

构建镜像

bash 复制代码
[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 分

相关推荐
AKAMAI10 小时前
跳过复杂环节:Akamai应用平台让Kubernetes生产就绪——现已正式发布
人工智能·云原生·云计算
天翼云开发者社区12 小时前
Rust 中的 Tokio 线程同步机制
云计算
天翼云开发者社区14 小时前
亮相2025年服贸会,天翼云打造高质量算力服务新生态!
云计算·天翼云
容器魔方3 天前
Bloomberg 正式加入 Karmada 用户组!
云原生·容器·云计算
AKAMAI3 天前
Sport Network 凭借 Akamai 实现卓越成就
人工智能·云原生·云计算
10岁的博客4 天前
《云计算如何驱动企业数字化转型:关键技术与实践案例》
云计算
m0_694845574 天前
教你使用服务器如何搭建数据库
linux·运维·服务器·数据库·云计算
shinelord明5 天前
【数据行业发展】可信数据空间~数据价值的新型基础设施
大数据·架构·云计算·创业创新
XINVRY-FPGA5 天前
XCKU15P-2FFVA1760I AMD 赛灵思 Xilinx Kintex UltraScale+ FPGA
arm开发·嵌入式硬件·阿里云·fpga开发·云计算·硬件工程·fpga
王道长服务器 | 亚马逊云5 天前
一个迁移案例:从传统 IDC 到 AWS 的真实对比
java·spring boot·git·云计算·github·dubbo·aws