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


    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]#
    
    • 1
    • 2
    • 3

    编写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]#
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    编写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]#
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    编写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]#
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    构建镜像

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

    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]#
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    构建镜像

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

    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]#
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    构建镜像

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

    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]#
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    构建镜像

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

    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 分

  • 相关阅读:
    开发知识点-stm32/ESP32/Mega2560嵌入式设计
    7. Linux进程环境
    软文推广如何实现效果?媒介盒子为你支招
    赋值运算符与逻辑运算符
    【生物信息学】基因富集分析
    【JKI SMO】框架讲解(二)
    互联网数字化管理升级,制造企业一站式智能管理,可定制-亿发
    从0开始设计一个物联网网关
    【Java】面向对象:继承、组合和多态
    始祖双碳新闻 | 2022年8月9日碳中和行业早知道
  • 原文地址:https://blog.csdn.net/m0_56363537/article/details/133587204