- 此项目对应合约项目为:[https://gitlab.trustslink.com/chriszhao1988/12306-cc](https://gitlab.trustslink.com/chriszhao1988/12306-cc) 

### **一、部署**

#### 1、安装依赖

a> npm install

#### 2、启用

b> node index.js 或者使用pm2, pm2 start index.js

### **二、配置说明**

#### 1、配置文件

a> /config/config.js:该配置文件是网关的配置文件,具体如下

    const path = require("path");                                            // 用来获取绝对路径,不需要可以不写
    module.exports = {
        port: 8080,                                                          // 网关端口
        timeout: 600000,                                                     // 延时,ms
        apiVersion: "v1.0",                                                  // 接口版本,没啥事别改
        walletPath: path.join(__dirname, "../wallet"),                       // 钱包存放位置,没啥事可以不用改
        chaincodePath: path.join(__dirname, "../chaincode"),                 // 安装合约的时候上传的合约存放的临时位置,没啥事也别改
        adminInfo: {                                                         // admin的信息
            mspId: "latrpdMSP",                                              // 网关所属组织的msp
            privateKey: path.join(__dirname, "../cert/admin.key"),           // admin私钥位置
            certificate: path.join(__dirname, "../cert/admin.pem")           // admin证书位置
        },
        peerInfo: [                                                          // 安装和部署智能合约的时候需要发送给哪些peer,可以是个数组,前提是只能是上面那个admin组织下的peer,别填错了
            {
                request: "grpcs://172.16.104.233:30006",                     // peer的地址,目前只支持tls开启的情况
                tlscaCert: path.join(__dirname, "../cert/peerca.pem"),       // peer的tlsca证书的位置
                peerDomain: "peer0.latrpd"                                   // peer的tls证书中写好的域名
            }
        ]
    };

b> /config/ccp.js:该配置文件是fabric sdk的配置文件,具体怎么写可以查看官方文档

    可以参考这个文件,不过目前没有支持从ca enroll admin的证书
    https://github.com/hyperledger/fabric-samples/blob/release-1.4/basic-network/connection.json

### **三、docker镜像打包**

    这个功能还不完善,但是可以用,有docker知识会走少一些弯路
    用到的命令
        打包: docker build -t gateway:1.0 .
        启动: docker-compose -f gateway-compose.yaml up -d

### **四、图片水印处理工具**

    首先安装opencv4.5.1,直接用源码编译安装即可
        mkdir build && cd build
        cmake CMAKE_INSTALL_PREFIX=/usr/local ..
        make && make install
    进入到/tools/imgWaterMark文件夹中执行如下命令
        cmake .
        make