腾讯事务处理技术验证系统3TS-Coo模块的项目环境安装使用说明

本篇文章将详细说明3TS-Coo模板的安装和使用,帮助您快速上手项目

第一部分 是简单的基础Docker相关概念,精炼的几句小白话快速理解即可;
第二部分 是快速安装项目环境的安装文档,简单几行命令搞定,小白也能轻松上手;
第三部分是对于已经安装的项目环境的简单使用的说明文档;

项目地址: https://github.com/Tencent/3TS/tree/coo-consistency-check/


1、为什么使用Docker?

正常下载安装3ts_coo的各种依赖,编译再到使用效率太低,同样的项目代码配置环境会出各种各样千奇百怪意想不到的问题,因此制作了该项目的镜像文件并部署,之后任何平台一键安装了Docker环境以后都可以再一键拉取这个镜像文件使用,也就得到了项目的环境。

2、使用Docker部署环境会增加学习成本吗?

不会,你只需要电脑上安装了Docker,都可以一键拉取镜像,然后运行容器即可,在容器中就像在正常的Linux中使用命令行操作即可,了解一点点概念,记住每次进入退出的命令并不难,安装卸载都很简单一键傻瓜操作就行。

一、快速了解基础概念

Docker是一个应用打包部署的工具基本概念如下:
镜像 :一个模板,可以理解为软件安装包 或者 类
容器 :模板的实例化,可以理解为安装后独立运行的软件 或者 类的实例化对象
仓库:存储各种各样的镜像,可以理解为应用商店 或者 包管理器

打包 :把你软件运行所需的依赖、第三方库、软件打包到一起,变成一个安装包
分发 :打包好的"安装包"上传到一个镜像仓库,其他人可以非常方便的获取和安装
部署:用"安装包"可以一个命令运行起来你的应用,跨平台自动模拟出一模一样的运行环境

Docker菜鸟教程:https://www.runoob.com/docker/docker-tutorial.html

二、项目环境安装文档

Step1、安装Docker

1、脚本安装(推荐)

未安装过Docker的机器上,root权限执行以下命令一键安装最新版Docker(推荐),旧版本可以一键卸载

bash 复制代码
curl -s https://get.docker.com/ | sh  
sudo apt purge --autoremove docker.io

ps: 据说Docker-compose的安装集成到上面这个脚本一起了?docker-compose -v 检查一下,没有的话执行下面这个脚本一键安装便是,无非多cv一个命令运行;

容器管理器docker-compose采用Python开发所以需要先安装pip(Python环境一般默认都装了)

bash 复制代码
curl -s https://bootstrap.pypa.io/get-pip.py | python3
pip install docker-compose

2、包管理器安装

不想使用脚本也可以使用系统自带包管理工具安装

bash 复制代码
sudo apt-get update
sudo apt-get install docker
# 先安装pip3再安装docker-compose
sudo apt-get install python3-pip
pip3 install docker-compose

Docker是一个系统服务,安装完可能需要手工启动服务(脚本安装不需要)

bash 复制代码
service start docker

3、手动安装

Docker分为CE版本和EE版本,其中CE版本面向开源社区,是免费软件,选CE即可。

手动安装官方文档:https://docs.docker.com/engine/installation/

Step2、拉取镜像启动项目环境

1、获取镜像

bash 复制代码
docker pull registry.cn-hangzhou.aliyuncs.com/open_projects/3ts_coo:1.0

2、启动容器

Docker images 查看一下镜像是否拉取成功,然后使用镜像ID启动容器

bash 复制代码
docker run -it 镜像id /bin/bash 

3、查看、进入、退出容器(日用高频,建议谨记

bash 复制代码
# 查看所有容器
docker ps -a
# 根据容器id ,进入想要的容器环境
docker exec -it 容器id /bin/bash
# 退出容器终端
exit

(扩展)4、启动、停止、重启容器

bash 复制代码
docker start  <容器 ID>
docker stop <容器 ID>
docker restart <容器 ID>

(扩展)5、打包容器

bash 复制代码
# 1、将容器打包成镜像,执行docker commit;
docker commit 容器id 容器名:版本

# 2、将镜像保存为本地文件,可以使用Docker save命令
docker save -o mssql-2019-with-cimb.tar mssql-2019-with-cimb

# 3、从文件载入镜像
docker load --input mssql-2019-with-cimb.tar

三、项目环境使用说明

启动容器,进入项目环境后情况如下(重点关注画线文件):

3ts_coo模块主要是检查数据事务的一致性,项目环境搭建好后想测试任何数据库都可以,但是作为入门这里默认配置了PostgreSQL,键入以下命令启动

bash 复制代码
/etc/init.d/postgresql start

isql pg -v 可以键入该命令检查一下是否数据库连接成功,出现下图即连接成功;


Step1 、编辑 do_test_list.txt 文件选择你想要测试的异常用例;
Step2 、编辑 autorun.sh 选择你想要测试的数据库和隔离级别后./autorun.sh,大工告成等着看结果吧!

注意1:Step2中省略了配置数据库用户名和密码,默认配置了postgresql的用户名和密码;

注意2:脚本的使用有两个版本./autorun.sh 是V1版,配置v1版数据库用户名和密码即可;

注意3:auto_test.sh和auto_test_all.sh都是已经废弃无用的脚本可以删除;

项目的安装一键搞定,项目的使用两步搞定,是不是很轻松?当然,如果你想要测试别的数据库,这里也提供一些可能的建议;

1、安装你想测试的数据库

2、安装你想测试的数据库连接器

3、配置odbc.iniodbcinst.ini文件,isql pg -v检查连接成功即可

4、修改./autorun.sh 数据库用户名和密码

5、特殊数据库需要做相应的适配;

最后的最后,回顾总结一下,本篇文章除了简单介绍docker的基础概念与安装和使用搭建了3ts项目环境,还详细的针对3TS_Coo的项目环境使用进行了说明,对于结果的解读与深入理解 和'./autorun.sh的两个版本问题将在下篇文章中发布。

-- 2023/09/11 0:50

相关推荐
中云DDoS CC防护蔡蔡13 分钟前
微信小程序被攻击怎么选择高防产品
服务器·网络安全·微信小程序·小程序·ddos
幽兰的天空15 分钟前
Python 中的模式匹配:深入了解 match 语句
开发语言·python
HPC_fac130520678161 小时前
以科学计算为切入点:剖析英伟达服务器过热难题
服务器·人工智能·深度学习·机器学习·计算机视觉·数据挖掘·gpu算力
yaoxin5211232 小时前
第二十七章 TCP 客户端 服务器通信 - 连接管理
服务器·网络·tcp/ip
网易独家音乐人Mike Zhou4 小时前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
安静读书4 小时前
Python解析视频FPS(帧率)、分辨率信息
python·opencv·音视频
小二·5 小时前
java基础面试题笔记(基础篇)
java·笔记·python
搬砖的小码农_Sky6 小时前
C语言:数组
c语言·数据结构
sinat_384241096 小时前
使用 npm 安装 Electron 作为开发依赖
服务器
小喵要摸鱼7 小时前
Python 神经网络项目常用语法
python