2.2.1 容器化部署 MariaDB [0.5 分]
編寫 Dockerfile 文件構(gòu)建 mysql 鏡像,要求基于 centos 完成 MariaDB 數(shù)據(jù)庫的安裝和配置,并設(shè)置服務(wù)開機(jī)自啟。編寫 Dockerfile 構(gòu)建鏡像 erp-mysql:v1.0,要求使用 centos7.9.2009 鏡像作為基鏡像,完成 MariaDB 數(shù)據(jù)庫的安裝,設(shè)置 root 用戶的密碼為 tshoperp,新建數(shù)據(jù)庫 jsh_erp 并導(dǎo)入數(shù)據(jù)庫文件 jsh_erp.sql,并設(shè)置 MariaDB 數(shù)據(jù)庫開機(jī)自啟。
上傳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]#
構(gòu)建鏡像
[root@k8s-master-node1 ERP]# docker build -t erp-mysql:v1.0 -f Dockerfile-mariadb .
1.鏡像構(gòu)建成功得 0.1 分;
2.數(shù)據(jù)庫安裝且導(dǎo)入數(shù)據(jù)成功得 0.4 分。
2.2.2 容器化部署 Redis [0.5 分]
編寫 Dockerfile 文件構(gòu)建 redis 鏡像,要求基于 centos 完成 Redis 服務(wù)的安裝和配置,并設(shè)置服務(wù)開機(jī)自啟。編寫 Dockerfile構(gòu)建鏡像 erp-redis:v1.0,要求使用 centos7.9.2009鏡像作為基礎(chǔ)鏡像,完成 Redis 服務(wù)的安裝,修改其配置文件關(guān)閉保護(hù)模式,并設(shè)置 Redis服務(wù)開機(jī)自啟。
[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]#
構(gòu)建鏡像
[root@k8s-master-node1 ERP]# docker build -t erp-redis:v1.0 -f Dockerfile-redis .
1.鏡像構(gòu)建成功的 0.1 分;
2.Redis 服務(wù)安裝成功且配置正確得 0.4 分
2.2.3 容器化部署 Nginx [0.5 分]
編寫 Dockerfile 文件構(gòu)建 nginx 鏡像,要求基于 centos 完成 Nginx 服務(wù)的安裝和配置,并設(shè)置服務(wù)開機(jī)自啟。編寫 Dockerfile 構(gòu)建鏡像 erp-nginx:v1.0,要求使用 centos7.9.2009 鏡像作為基礎(chǔ)鏡像,完成 Nginx 服務(wù)的安裝,使用提供的 app.tar.gz 和 nginx.conf 啟動Nginx 服務(wù),并設(shè)置開機(jī)自啟。
[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]#
構(gòu)建鏡像
[root@k8s-master-node1 ERP]# docker build -t erp-nginx:v1.0 -f Dockerfile-nginx .
1.鏡像構(gòu)建成功得 0.3 分;
2.Nginx 安裝成功且配置正確得 0.2 分。
2.2.4 容器化部署 ERP[0.5 分]
編寫 Dockerfile 文件構(gòu)建 erp 鏡像,要求基于 centos 完成 JDK 環(huán)境和 ERP 服務(wù)的安裝與配置,并設(shè)置服務(wù)開機(jī)自啟。編寫 Dockerfile 構(gòu)建鏡像 erp-server:v1.0,要求使用 centos7.9.2009 鏡像作為基礎(chǔ)鏡像,完成 JDK 環(huán)境的安裝,啟動提供的 jar 包,并設(shè)置服務(wù)開機(jī)自啟。
[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]#
構(gòu)建鏡像
[root@k8s-master-node1 ERP]# docker build -t erp-service:v1.0 -f Dockerfile-erp .
1.鏡像構(gòu)建成功得 0.3 分;
2.erp 環(huán)境安裝正確得 0.2 分。
2.2.5 編排部署 ERP管理系統(tǒng)[1 分]
編寫 docker-compose.yaml 文件,要求使用鏡像 mysql、redis、nginx和 erp完成 ERP 管理系統(tǒng)的編排部署。編寫 docker-compose.yaml完成 ERP管理系統(tǒng)的部署,要求定義 mysql、redis、nginx 和 erp 共四個 Service,分別使用鏡像 erp-redis:v1.0、erp-mysql:v1.0、erpnginx:v1.0 和 erpserver:v1.0,并將 nginx 服務(wù)的 80 端口映射到宿主機(jī)的 8888 端口文章來源:http://www.zghlxwxcb.cn/news/detail-714705.html
1.8888 端口可以訪問到 ERP 系統(tǒng)得 1 分文章來源地址http://www.zghlxwxcb.cn/news/detail-714705.html
到了這里,關(guān)于23云計算全國職業(yè)技能大賽容器云-容器編排的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!