🍳
Between code and words
  • About
    • About Me
    • About Book
  • 技术专辑
    • 大数据BigData
      • Ambari
        • 搭建虚拟机集群以及安装Ambari
          • self
            • 构建b
            • 构建m
            • 构建s
            • 构建集群
          • Windows
            • +VMware从头完全部署
            • +Docker从已有镜像简易部署
          • Linux
            • +Docker从头完全部署
            • +Docker从已有镜像简易部署
      • CDH
      • Maven
        • 一个简单的项目
        • GitHub远程maven私人仓库
      • Hadoop
        • HDFS介绍
        • MapReduce介绍
        • YARN介绍
        • HDFS常用命令
      • Hive
        • Hive简介及核心概念
        • Hive CLI和Beeline命令行的基本使用
        • ambari安装Hive
        • Hive常用DDL操作
        • Hive常用DML操作
        • Hive常用DCL操作
        • Hive分区表和分桶表
        • Hive 视图和索引
        • Hive数据查询详解
        • 进阶-优化
        • 进阶-函数
        • 进阶-Brickhouse UDF
        • 进阶-接入Python
      • 帮助
        • 常用端口
        • 常用命令
        • QA
    • 项目Program
      • 大数据项目实践
        • 1 亿条淘宝用户行为数据分析
          • 1. 部署环境
          • 2. 数据集下载
          • 3. 数据处理和表优化
          • 4.数据分析
          • 5.可视化
      • Web实践-Qhubl
        • 第一章-概
        • 第二章-面向公众的前后端
        • 部署指导
      • GNN
        • 1. 环境配置
        • 2. 节点分类
          • 数据集
            • Cora.py
          • 模型
            • GCN.py
            • GAT.py
          • Utils
            • draw.py
            • TTV.py
      • 美亚柏科
    • Linux
      • Linux
        • 常见
        • 代理
        • 科学计算
          • MPAS7
        • WSL
          • WSL数据迁移
          • 安装Docker Engine
        • 脚本
        • QA
      • Git
        • QA
      • VMware
        • 虚拟机代理
        • 双向复制粘贴
        • 磁盘扩容
        • QA
      • Docker
        • WSL安装Docker Engine
        • 优雅的上代理
        • 优雅地给容器新添端口
        • QA
      • MySQL
        • 重置初始密码
        • 免输密码登录
        • 低密码策略脚本
        • DeBug
    • Java
      • 语言特性
        • 多线程
        • AQS
        • JVMG1
      • 框架
        • SpringBoot
          • 注解
          • 配置
          • YAML
  • Self
    • 电脑应用
    • 奖项存档
    • 日语笔记
      • 入门五十音
      • 入门音调声调
    • 读书笔记
      • 《贫穷的本质》
        • 前言
        • 第一章 再好好想想
        • 第二章 饥饿人口已达到10亿?
Powered by GitBook
On this page
  • 获取镜像
  • 初次启动
  • 暂停
  • 二次启动
  • 备份数据库
  1. 技术专辑
  2. 项目Program
  3. Web实践-Qhubl

部署指导

可迁移式部署

获取镜像

首先docker把镜像tar加载进去,使用docker imges -a查看所有镜像

初次启动

提供初次启动脚本,bash init.sh即可,具体原理细节如下

web=xiamussr/qhubl:1.2
mysql=xiamussr/qhubl-mysql:1.0
admin=xiamussr/qhubl-admin:1.0

这个config.sh设置了三个镜像的名称和标签

source ./config.sh
docker network create qhubl --subnet=172.19.0.0/16 --gateway=172.19.0.1
docker run --network qhubl --ip 172.19.0.2 -p 3306:3306 --name mysql -d --restart=always -v /auroras/mysql/log:/var/log/mysql -v /auroras/mysql/data:/var/lib/mysql -v /auroras/mysql/conf:/etc/mysql/conf.d  -e MYSQL_ROOT_PASSWORD=Aa4115252397 $mysql
docker run --network qhubl --ip 172.19.0.3 -p 8888:8888 --name admin -d $admin
docker run --network qhubl --ip 172.19.0.4 -p 5173:5173 -p 5050:5050 --name web -itd $web

web_id=$(docker ps -a | grep $web | awk '{print $1}')
docker exec $web_id bash /root/start.sh

这个为启动脚本,首先获取config.sh的变量。

第二行创建一个docker network小局域网。

第三四五行从镜像中创建容器,并把容器并入这个小局域网,使得它们之间可以通过ip通信,同时向主机开放端口,方便外部访问。

最后两行为web容器启动服务命令,另外两个容器在启动时会自动启动服务。

暂停

提供暂停脚本,bash stop.sh即可,具体原理细节如下

source ./config.sh

web_id=$(docker ps -a | grep $web | awk '{print $1}')
mysql_id=$(docker ps -a | grep $mysql | awk '{print $1}')
admin_id=$(docker ps -a | grep $admin | awk '{print $1}')

docker stop $web_id
docker stop $mysql_id
docker stop $admin_id

获取三个容器的id,然后依次暂停它们

二次启动

提供二次启动脚本,bash start.sh即可,具体原理细节如下

source ./config.sh

web_id=$(docker ps -a | grep $web | awk '{print $1}')
mysql_id=$(docker ps -a | grep $mysql | awk '{print $1}')
admin_id=$(docker ps -a | grep $admin | awk '{print $1}')

docker start $mysql_id
docker start $admin_id
docker start $web_id
docker exec $web_id bash /root/start.sh

获取三个容器的id,然后依次启动它们

备份数据库

提供数据库备份脚本,bash sqlbk.sh即可,具体原理细节如下

source ./config.sh

mysql_id=$(docker ps -a | grep $mysql | awk '{print $1}')
docker exec $mysql_id mysqldump -u root -p'Aa4115252397' PearAdminFlask > /tmp/PearAdminFlask.sql

数据库备份文件将会被导出到主机的/tmp/下,名为PearAdminFlask.sql

Previous第二章-面向公众的前后端NextGNN

Last updated 2 years ago