Linux部署Tcloud云测平台(Docker部署)

1、搭建Docker环境

Docker安装不再赘述,本次安装的版本是:

[root@localhost deploy]# docker --version
Docker version 20.10.2, build 2291f61

Docker-compose安装也不再赘述,本次安装版本如下:

[root@localhost deploy]# docker-compose --version
docker-compose version 1.27.4, build 40524192

2、部署服务端

下载服务端代码

https://github.com/JunManYuanLong/TcloudServer

转到deploy目录下,拉取所有镜像

[root@localhost deploy]# docker-compose pull

然后修改local_config.py文件,docker部署只改这一处,直接复制覆盖就行了。

SQLALCHEMY_DATABASE_URI = 'mysql://root:tc123456@mysql:3306/demo?charset=utf8'

修改docker-compose.yml。注意:因为posegres镜像启动需要密码,不然会启动不起来。这个github上没给出。

version: '3.5'
services:
  tcloud:
    image: h1.ywopt.com/ywopt.com/tcloud:demo
    restart: always
    volumes:
      - "./local_config.py:/tcloud/local_config.py"

  mysql:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: "tc123456"
    volumes:
      - "./init:/docker-entrypoint-initdb.d/"
      - "./volumes/mysql:/var/lib/mysql"
      - "./tcloud.cnf:/etc/mysql/conf.d/tcloud.cnf"
    ports:
      - 3306:3306


  kong:
    image: kong:latest
    restart: always
    environment:
      KONG_DATABASE: postgres
      KONG_PG_HOST: kong_database
      KONG_CASSANDRA_CONTACT_POINTS: kong_database
      KONG_PG_PASSWORD: kong
      KONG_ADMIN_LISTEN: 0.0.0.0:8001
      KONG_ADMIN_LISTEN_SSL: 0.0.0.0:8444
    volumes:
      - ./volumes/logs:/home/TcloudServer/deploy/volumes/kong/logs
    ports:
      - 9000:8000
    links:
      - kong_database


  kong_database:
    image: postgres:9.5
    restart: always
    environment:
      POSTGRES_USER: kong
      POSTGRES_DB: kong
      POSTGRES_PASSWORD: kong
    volumes:
      - ./volumes/kong_database:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD", "pg_isready", "-U", "kong"]
      interval: 5s
      timeout: 5s
      retries: 5


  konga:
    image: pantsel/konga
    restart: always
    ports:
      - 9001:1337
    environment:
      - DB_ADAPTER=postgres
      - DB_HOST=kong_database
      - DB_USER=kong
      - DB_PASSWORD=kong

networks:
  default:
    name: tcloud_demo
    driver: bridge

再初始化kong的数据库(如果报错,再执行一次,成功的话会显示Database is up-to-date

[root@localhost deploy]# docker-compose up -d kong_database
// 容器启动以后,数据库会本地挂载到 ./volumes/kong_database 里面
// 但由于权限问题,初始化数据库会失败,所以要先对该文件赋予权限
[root@localhost deploy]# chmod -R 777 ./volumes/kong_database
[root@localhost deploy]# docker-compose run --rm kong kong migrations bootstrap

然后启动所有项目

[root@localhost deploy]# docker-compose up -d

查看启动状态

[root@localhost deploy]# docker-compose ps

如果所有状态均为up,则运行正常,否则sudo docker logs 查看日志

打开konga(kong的管理页面,http://localhost:9001),注册账号并登录,再新建连接,地址为http://kong:8001\

成功后,进入SNAPSHOT页面,点击IMPORT FROM FILE,选择我们的snapshot_3.json文件,并进入DETAILS中RESTORE,全选导入,可能会出错,再执行一次即可,此时我们的网关服务已经运行完成,地址为http://localhost:9000 ps: 数据库初始化文件是init/init.sql,可以通过sudo docker-compose down -v再删除volume/mysql挂载目录之后,sudo docker-compose up -d来重新初始化数据库。

注意:github上是kong.json,这个文件有问题,需要去QQ群中下载snapshot_3.json文件。

3、前端部署

安装node环境,本次node版本:

[root@localhost node]# node -v
v10.9.0

下载前端项目

https://github.com/JunManYuanLong/Tcloud

在前端项目下,安装依赖包

[root@localhost Tcloud]# npm install --registry=https://registry.npm.taobao.org

修改config/dev.env.js中的BASE_URL地址为上面的后端地址http://localhost:9000

运行npm run dev即可打开本项目

[root@localhost Tcloud]# npm run dev

 

你可能感兴趣的:(云测试,云测试)