云计算-容器云-编排摆设商城gpmall-single

打印 上一主题 下一主题

主题 1782|帖子 1782|积分 5346

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
gpmall-single

情况准备
  1. [root@k8s-master-node1 gpmall-single]# vim local.repo
  2. [centos]
  3. name=centos
  4. baseurl=http://10.24.1.75/centos/
  5. gpgcheck=0
  6. enabled=1
  7. [yum]
  8. name=yum
  9. baseurl=file:///root/gpmall-repo
  10. gpgcheck=0
  11. enabled=1
复制代码
1、【实操题】容器化摆设Redis(1分)

在master节点上编写/root/redis/Dockerfile文件构建chinaskill-redis:v1.1镜像,详细要求如下:(需要用到的软件包:gpmall-single.tar.gz)
(1)基础镜像:centos:centos7.5.1804;
(2)作者:Chinaskill;
(3)修改配置文件中的bind 127.0.0.1为bind 0.0.0.0;
(4)设置Redis免密,并关闭保护模式;
(5)开放端口:6379;
(6)设置服务开机自启。
完成后构建镜像,并提交master节点的用户名、密码和IP地址到答题框。
  1. [root@k8s-master-node1 gpmall-single]# mkdir redis
  2. [root@k8s-master-node1 gpmall-single]# cp local.repo redis/
  3. [root@k8s-master-node1 gpmall-single]# cp -r  gpmall-repo/ redis/
  4. [root@k8s-master-node1 gpmall-single]# vim redis/Dockerfile
  5. FROM centos:7.9.2009
  6. RUN rm -rf /etc/yum.repos.d/*
  7. ADD local.repo /etc/yum.repos.d/
  8. ADD gpmall-repo /root/gpmall-repo
  9. RUN yum install redis -y
  10. RUN sed -i 's/protected-mode yes/protected-mode no/g' /etc/redis.conf
  11. RUN sed -i 's/bind 127.0.0.1/bind 0.0.0.0/g' /etc/redis.conf
  12. EXPOSE 6379
  13. CMD ["redis-server","/etc/redis.conf"]
  14. [root@k8s-master-node1 gpmall-single]# docker build -t chinaskill-redis:v1.1 -f redis/Dockerfile .
复制代码
2、【实操题】容器化摆设MariaDB(1.5分)

在master节点上编写/root/mariadb/Dockerfile文件构建chinaskill-mariadb:v1.1镜像,详细要求如下:(需要用到的软件包:gpmall-single.tar.gz)
(1)基础镜像:centos:centos7.5.1804;
(2)作者:Chinaskill;
(3)设置数据库密码:123456;
(4)创建数据库gpmall并导入数据库文件gpmall.sql;
(5)设置数据库字符编码:UTF-8;
(6)开放端口:3306;
(7)设置服务开机自启。
完成后构建镜像,并提交master节点的用户名、密码和IP地址到答题框。
  1. [root@k8s-master-node1 ~]# mkdir mariadb
  2. [root@k8s-master-node1 ~]# cd mariadb/
  3. [root@k8s-master-node1 mariadb]# vim Dockerfile
  4. FROM centos:7.9.2009
  5. RUN rm -rf /etc/yum.repos.d/*
  6. ADD local.repo /etc/yum.repos.d/
  7. ADD gpmall-repo /root/gpmall-repo
  8. RUN yum install mariadb mariadb-server -y
  9. RUN echo -e "[mysqld]\ncharacter-set-server=utf8">>/etc/my.cnf
  10. ENV LC_ALL en_US.UTF-8
  11. COPY gpmall.sql /root/
  12. RUN mysql_install_db --user=root
  13. RUN mysqld_safe --user=root  & sleep 8 ;\
  14.     mysqladmin password 123456 ;\
  15.     mysql -u root -p123456 -e "grant all privileges on *.* to 'root'@'%' identified by '123456';" ;\
  16.     mysql -u root -p123456 -e "create database gpmall; use gpmall;source /root/gpmall.sql;"
  17. EXPOSE 3306
  18. CMD ["mysqld_safe","--user=root"]
  19. [root@k8s-master-node1 mariadb]# cp /root/gpmall-single/gpmall.sql .
  20. [root@k8s-master-node1 mariadb]# cp -r  /root/gpmall-single/gpmall-repo/ .
  21. [root@k8s-master-node1 mariadb]# cp /root/gpmall-single/local.repo .
  22. [root@k8s-master-node1 mariadb]# docker build -t chinaskill-mariadb:v1.1 -f Dockerfile .
复制代码
3、【实操题】容器化摆设Zookeeper(1.5分)

在master节点上编写/root/zookeeper/Dockerfile文件构建chinaskill-zookeeper:v1.1镜像,详细要求如下:(需要用到的软件包:gpmall-single.tar.gz)
xxxxxxxxxx 【检测类型】命令行检测【登录管理器】账户密码【检测命令1】[0.5分]docker-compose -f /root/Monitor/docker-compose.yaml ps|grep running【判分尺度】monitor-alertmanager || 9093->9093 || monitor-grafana || 3000->3000 || monitor-node || 9100->9100 || monitor-prometheus || 9090->9090【判分竣事】​【检测命令2】[0.5分]docker exec monitor-prometheus cat /data/prometheus/prometheus.yml【判分尺度】node-exporter || alertmanager【判分竣事】​【检测命令3】[0.5分]curl -L http://$(hostname -i):9090/targets【判分尺度】alertmanager (1/1 up) || node (1/1 up) || prometheus (1/1 up)【判分竣事】​【检测命令4】[0.5分]curl -u admin:admin http://$(hostname -i):3000/datasources【判分尺度】nginx【判分竣事】​【检测命令5】[0.5分]curl -L http://$(hostname -i):9093【判分尺度】Alertmanager【判分竣事】​shell
(2)作者:Chinaskill;
(3)开放端口:2181;
(4)设置服务开机自启。
xxxxxxxxxx [root@k8s-master-node1 project]# cat docker-compose.yamlversion: '3'services:  app:    container_name: hyperf-service    image: hyperf-service:v1.0    restart: always    command: "sleep 2h"  hyperf-mysql:    container_name: hyperf-mysql    image: hyperf-mariadb:v1.0    restart: always    ports:    - 3306:3306  hyperf-redis:    container_name: hyperf-redis    image: hyperf-redis:v1.0    restart: always  hyperf-ui:    container_name: hyperf-ui    image: hyperf-nginx:v1.0    restart: always    ports:    - "8081:80"    volumes:    - /root/hyperf/project/docker/conf.d:/etc/nginx/conf.d    - /root/hyperf/project/frontend:/var/www/frontend[root@k8s-master-node1 project]# docker-compose up -dshell
  1. [root@k8s-master-node1 ~]# mkdir zookeeper
  2. [root@k8s-master-node1 ~]# cd zookeeper/
  3. [root@k8s-master-node1 zookeeper]# vim Dockerfile
  4. FROM centos:7.9.2009
  5. RUN rm -rf /etc/yum.repos.d/*
  6. ADD local.repo /etc/yum.repos.d/
  7. ADD gpmall-repo /root/gpmall-repo
  8. # RUN yum install java-1.8.0-* -y
  9. RUN yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel -y
  10. ADD zookeeper-3.4.14.tar.gz /opt
  11. RUN mv /opt/zookeeper-3.4.14/conf/zoo_sample.cfg /opt/zookeeper-3.4.14/conf/zoo.cfg
  12. EXPOSE 2181
  13. CMD ["sh","-c","/opt/zookeeper-3.4.14/bin/zkServer.sh start-foreground"]
  14. [root@k8s-master-node1 zookeeper]# cp /root/gpmall-single/gpmall-repo/  .  -r
  15. [root@k8s-master-node1 zookeeper]# cp /root/gpmall-single/local.repo .
  16. [root@k8s-master-node1 zookeeper]# cp /root/gpmall-single/zookeeper-3.4.14.tar.gz .
  17. [root@k8s-master-node1 zookeeper]# docker build -t chinaskill-zookeeper:v1.1 -f Dockerfile .
复制代码
4、【实操题】容器化摆设Kafka(1分)

在master节点上编写/root/kafka/Dockerfile文件构建chinaskill-kafka:v1.1镜像,详细要求如下:(需要用到的软件包:gpmall-single.tar.gz)
(1)基础镜像:centos:centos7.5.1804;
(2)作者:Chinaskill;
(3)开放端口:9092;
(4)设置服务开机自启。
完成后构建镜像,并提交master节点的用户名、密码和IP地址到答题框。
  1. [root@k8s-master-node1 ~]# mkdir kafka
  2. [root@k8s-master-node1 ~]# cd kafka/
  3. [root@k8s-master-node1 kafka]# vim Dockerfile
  4. FROM centos:7.9.2009
  5. RUN rm -rf /etc/yum.repos.d/*
  6. ADD local.repo  /etc/yum.repos.d/
  7. ADD gpmall-repo /root/gpmall-repo
  8. RUN yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel -y
  9. ADD zookeeper-3.4.14.tar.gz /opt/
  10. ADD kafka_2.11-1.1.1.tgz /opt/
  11. RUN mv /opt/zookeeper-3.4.14/conf/zoo_sample.cfg /opt/zookeeper-3.4.14/conf/zoo.cfg
  12. EXPOSE 9092
  13. CMD ["sh","-c","/opt/zookeeper-3.4.14/bin/zkServer.sh start && /opt/kafka_2.11-1.1.1/bin/kafka-server-start.sh /opt/kafka_2.11-1.1.1/config/server.properties"]
  14. [root@k8s-master-node1 kafka]# cp -r /root/gpmall-single/local.repo .
  15. [root@k8s-master-node1 kafka]# cp -r /root/gpmall-single/gpmall-repo/ .
  16. [root@k8s-master-node1 kafka]# cp -r /root/gpmall-single/zookeeper-3.4.14.tar.gz .
  17. [root@k8s-master-node1 kafka]# cp -r /root/gpmall-single/kafka_2.11-1.1.1.tgz  .
  18. [root@k8s-master-node1 kafka]# docker build -t chinaskill-kafka:v1.1 -f Dockerfile .
复制代码
5、【实操题】容器化摆设Nginx(1分)

在master节点上编写/root/nginx/Dockerfile文件构建chinaskill-nginx:v1.1镜像,详细要求如下:(需要用到的软件包:gpmall-single.tar.gz)
(1)基础镜像:centos:centos7.5.1804;
(2)作者:Chinaskill;
(3)编写/etc/nginx/conf.d/default.conf文件,配置反向代理,将80端口请求转发到8081、8082和8083;
(4)将dist中的文件复制到/usr/share/nginx/html/目录下;
(5)复制所有的jar包到镜像中;
(6)开放端口:80、443、8081、8082、8083;
(7)设置服务开机自启。
完成后构建镜像,并提交master节点的用户名、密码和IP地址到答题框。
  1. [root@k8s-master-node1 ~]# mkdir nginx
  2. [root@k8s-master-node1 ~]# cd nginx/
  3. [root@k8s-master-node1 nginx]# vim Dockerfile
  4. FROM centos:centos7.5.1804
  5. MAINTAINER Chinaskill
  6. RUN rm -rf /etc/yum.repos.d/*
  7. ADD local.repo /etc/yum.repos.d/
  8. ADD gpmall-repo /root/gpmall-repo
  9. COPY *.jar /root/
  10. RUN yum -y install nginx java-1.8.0-openjdk java-1.8.0-openjdk-devel
  11. RUN sed -i '1a location /shopping { proxy_pass http://127.0.0.1:8081 ;}' /etc/nginx/conf.d/default.conf
  12. RUN sed -i '2a location /user { proxy_pass http://127.0.0.1:8082 ;}' /etc/nginx/conf.d/default.conf
  13. RUN sed -i '3a location /cashier { proxy_pass http://127.0.0.1:8083 ;}' /etc/nginx/conf.d/default.conf
  14. RUN rm -rf /usr/share/nginx/html/
  15. COPY dist/ /usr/share/nginx/html/
  16. ADD start.sh /root/
  17. RUN chmod +x /root/start.sh
  18. EXPOSE 80 443 8081 8082 8083
  19. CMD ["nginx","-g","daemon off;"]
  20. [root@k8s-master-node1 nginx]# vim start.sh
  21. nohup java -jar /root/shopping-provider-0.0.1-SNAPSHOT.jar &
  22. sleep 5
  23. nohup java -jar /root/user-provider-0.0.1-SNAPSHOT.jar &
  24. sleep 5
  25. nohup java -jar /root/gpmall-shopping-0.0.1-SNAPSHOT.jar &
  26. sleep 5
  27. nohup java -jar /root/gpmall-user-0.0.1-SNAPSHOT.jar &
  28. sleep 5
  29. [root@k8s-master-node1 nginx]# cp -r /root/gpmall-single/gpmall-repo/ .
  30. [root@k8s-master-node1 nginx]# cp -r /root/gpmall-single/*.jar .
  31. [root@k8s-master-node1 nginx]# cp -r /root/gpmall-single/dist .
  32. [root@k8s-master-node1 nginx]# cp -r /root/gpmall-single/local.repo  .
  33. [root@k8s-master-node1 nginx]# docker build -t chinaskill-nginx:v1.1 -f Dockerfile .
复制代码
6、【实操题】编排摆设商城(4分)

在master节点上编写/root/chinaskillmall/docker-compose.yaml文件摆设,详细要求如下:
(1)容器1名称:mall-mysql;镜像:chinaskill-mariadb:v1.1;端口映射:13306:3306;
(2)容器2名称:mall-redis;镜像:chinaskill-redis:v1.1;端口映射:16379:6379;
(3)容器3名称:mall-kafka;镜像:chinaskill-kafka:v1.1;端口映射:19092:9092;
(4)容器4名称:mall-zookeeper;镜像:chinaskill-zookeeper:v1.1;端口映射:12181:2181;
(5)容器5名称:mall-nginx;镜像:chinaskill-nginx:v1.1;端口映射:83:80,1443:443;自启动所有的jar包程序。
完成后编排摆设商城,并能成功访问商城首页。然后提交master节点的用户名、密码和IP地址到答题框
  1. [root@k8s-master-node1 ~]# mkdir chinaskillmall
  2. [root@k8s-master-node1 ~]# cd chinaskillmall/
  3. [root@k8s-master-node1 chinaskillmall]# vim docker-compose.yaml
  4. version: '3'
  5. services:
  6.   mall-mysql:
  7.     container_name: mall-mysql
  8.     image: chinaskill-mariadb:v1.1
  9.     restart: always
  10.     ports:
  11.         - 13306:3306
  12.   mall-redis:
  13.     depends_on:
  14.         - mall-mysql
  15.     container_name: mall-redis
  16.     image: chinaskill-redis:v1.1
  17.     restart: always
  18.     ports:
  19.         - 16379:6379
  20.   mall-zookeeper:
  21.     depends_on:
  22.         - mall-redis
  23.     container_name: mall-zookeeper
  24.     image: chinaskill-zookeeper:v1.1
  25.     restart: always
  26.     ports:
  27.         - 12181:2181
  28.   mall-kafka:
  29.     depends_on:
  30.         - mall-zookeeper
  31.     container_name: mall-kafka
  32.     image: chinaskill-kafka:v1.1
  33.     restart: always
  34.     ports:
  35.         - 19092:9092
  36.   mall-nginx:
  37.     depends_on:
  38.         - mall-kafka
  39.     container_name: mall-nginx
  40.     image: chinaskill-nginx:v1.1
  41.     restart: always
  42.     ports:
  43.         - 83:80
  44.         - 1443:443
  45.     links:
  46.         - mall-mysql:mysql.mall
  47.         - mall-redis:redis.mall
  48.         - mall-zookeeper:zookeeper.mall
  49.         - mall-kafka:kafka.mall
  50.     command: ["sh","-c","/root/start.sh && nginx && tail -f /etc/shadow"]
复制代码
本文由博客一文多发平台 OpenWrite 发布!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

反转基因福娃

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表