• Stars
    star
    714
  • Rank 63,413 (Top 2 %)
  • Language
    Go
  • License
    MIT License
  • Created over 4 years ago
  • Updated 9 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🤹 基于区块链(Hyperledger Fabric)的房地产交易系统(可作为区块链毕设项目参考)

🚀 本项目使用 Hyperledger Fabric 构建底层区块链网络, go 编写智能合约,应用层使用 gin+fabric-sdk-go ,前端使用 vue+element-ui

如果想要联系我,可以关注我的公众号【gopher云原生】

gopher云原生

教程

万字长文,教你用go开发区块链应用

🤔 有任何疑问,请先看完本篇文章。本项目涉及的知识点都有在文章中进行说明

手动部署

环境要求: 安装了 Docker 和 Docker Compose 的 Linux 或 Mac OS 环境

附 Linux Docker 安装教程:点此跳转

🤔 Docker 和 Docker Compose 需要先自行学习。本项目的区块链网络搭建、链码部署、前后端编译/部署都是使用 Docker 和 Docker Compose 完成的。

  1. 下载本项目放在任意目录下,例:/root/fabric-realty

  2. 给予项目权限,执行 sudo chmod -R +x /root/fabric-realty/

  3. 进入 network 目录,执行 ./start.sh 部署区块链网络和智能合约

  4. 进入 application 目录,执行 ./start.sh 启动前后端应用,然后就可使用浏览器访问前端页面 http://localhost:8000 ,其中后端接口地址为 http://localhost:8888

  5. (可选)进入 network/explorer 目录,执行 ./start.sh 启动区块链浏览器后,访问 http://localhost:8080,用户名 admin,密码 123456

完全清理环境

注意,该操作会将所有数据清空。按照该先后顺序:

  1. (如果启动了区块链浏览器)进入 network/explorer 目录,执行 ./stop.sh 关闭区块链浏览器

  2. 进入 application 目录,执行 ./stop.sh 关闭区块链应用

  3. 最后进入 network 目录,执行 ./stop.sh 关闭区块链网络并清理链码容器

目录结构

  • application/server : fabric-sdk-go 调用链码(即智能合约),gin 提供外部访问接口(RESTful API)

  • application/web : vue + element-ui 提供前端展示页面

  • chaincode : go 编写的链码(即智能合约)

  • network : Hyperledger Fabric 区块链网络配置

功能流程

管理员为用户业主创建房地产。

业主查看名下房产信息。

业主发起销售,所有人都可查看销售列表,购买者购买后进行扣款操作,并等待业主确认收款,交易完成后,更新房产持有人。在有效期期间可以随时取消交易,有效期到期后自动关闭交易。

业主发起捐赠,指定受赠人,受赠人确认接收受赠前,双方可取消捐赠/受赠。

演示效果

login

addreal

info

explorer

喝杯奶茶

微信打赏 支付宝打赏
微信 支付宝

More Repositories

1

hub-mirror

🚀 通过 GitHub Actions 将 docker.io、gcr.io、registry.k8s.io、k8s.gcr.io、quay.io、ghcr.io 等国外镜像转换为国内镜像加速下载
Go
929
star
2

ipashare

🚤 share and install your Apple ipa
Go
535
star
3

flutter-one-app

🎊 Flutter 仿「ONE·一个」APP
Dart
341
star
4

wsc

🏓 golang websocket client 基于 gorilla/websocket 具有断线重连机制的 websocket go 客户端实现
Go
45
star
5

miniprogram-blog

使用微信小程序云开发,实现发布,查看,删除,收藏,取消收藏,评论,删除评论等功能的简单博客系统
JavaScript
42
star
6

android-bluetoothChat

Android蓝牙聊天/即时通讯/文件传输,集成蓝牙服务,权限管理,文件操作等功能
Java
42
star
7

kubectl-lazy

🦥 kubectl plugin to easy to view pod
Go
23
star
8

mini-k8s-proxy

🪁 利用 CRD 实现一个 mini-k8s-proxy
Go
7
star
9

jaeger-example

🥏 Jaeger use examples based on OpenTracing and OpentElemetry
Go
3
star
10

go-one-server

基于 Gin 快速构建 RESTful API
Go
3
star
11

sidecar-go

🎢 一个自动向 Pod 注入 sidecar 容器的 k8s 控制器
Go
3
star
12

CloudNative

🌤️ Cloud Native 云原生
Go
3
star
13

goat

🐐 基于 gin 进行快速构建 RESTFUL API 的项目框架
Go
2
star
14

mq-delay

基于RabbitMQ实现的延时消息队列
Go
2
star
15

gtools

golang 常用工具集合库
Go
2
star
16

go-code

个人刷题仓库
Go
1
star
17

traefik-timer-plugin

traefik 计时器插件示例
Go
1
star
18

go-kit-example

go-kit实践例子
Go
1
star
19

togettoyou

1
star
20

sidecar-injector

最简还原 sidecar 注入过程
Go
1
star