A step-by-step guide to deploying your first Hello World chaincode onto Hyperledger Fabric.
These slides were created by James Bowkett, Principal Consultant at Excelian.
Introduction to Blockchain and HyperledgerDev_Events
Nitesh Thakrar, IT Software Architect,
IBM @niteshpthakrar and Benjamin Fuentes, Software
Architect and Developer, IBM, @benji_fuentes
This workshop will be in 3 stages:
1. A brief presentation on Blockchain and why
Hyperledger
2. A demo use case to explain the architecture and the code behind the demo
3. Finally, the attendees will create their own blockchain application on the cloud. The hands-on
will also invite them to use the appropriate APIs and event update a smart contract.Majority of
the time will be in doing the hands-on (step 3) so that the attendees are able to continue
developing their application after the event.Requirements: Attendees will need to bring their
laptops and be able to connect to wifi.
This tutorial will walk you through building a Hyperledger Composer blockchain solution from scratch. In the space of a few hours you will be able to go from an idea for a disruptive blockchain innovation, to executing transactions against a real Hyperledger Fabric blockchain network and generating/running a sample Angular 2 application that interacts with a blockchain network.
This tutorial gives an overview of the techniques and resources available to apply to your own use case.
Note: This tutorial was written against the latest Hyperledger Composer build on Ubuntu Linux running with Hyperledger Fabric v1.0 where referenced below and also tested for a Mac environment.
Composer is a framework to accelerate the development of applications built on the top of Blockchain platform such as Hyperledger Fabric.Here we have complete information about Composer and Playground
for more information please visit our youtube channel
https://www.youtube.com/edit?o=U&video_id=EvICyArbFSs
www.rihusoft.com
Introduction to Blockchain and HyperledgerDev_Events
Nitesh Thakrar, IT Software Architect,
IBM @niteshpthakrar and Benjamin Fuentes, Software
Architect and Developer, IBM, @benji_fuentes
This workshop will be in 3 stages:
1. A brief presentation on Blockchain and why
Hyperledger
2. A demo use case to explain the architecture and the code behind the demo
3. Finally, the attendees will create their own blockchain application on the cloud. The hands-on
will also invite them to use the appropriate APIs and event update a smart contract.Majority of
the time will be in doing the hands-on (step 3) so that the attendees are able to continue
developing their application after the event.Requirements: Attendees will need to bring their
laptops and be able to connect to wifi.
This tutorial will walk you through building a Hyperledger Composer blockchain solution from scratch. In the space of a few hours you will be able to go from an idea for a disruptive blockchain innovation, to executing transactions against a real Hyperledger Fabric blockchain network and generating/running a sample Angular 2 application that interacts with a blockchain network.
This tutorial gives an overview of the techniques and resources available to apply to your own use case.
Note: This tutorial was written against the latest Hyperledger Composer build on Ubuntu Linux running with Hyperledger Fabric v1.0 where referenced below and also tested for a Mac environment.
Composer is a framework to accelerate the development of applications built on the top of Blockchain platform such as Hyperledger Fabric.Here we have complete information about Composer and Playground
for more information please visit our youtube channel
https://www.youtube.com/edit?o=U&video_id=EvICyArbFSs
www.rihusoft.com
The blockchain is an incorruptible digital ledger of economic transactions that can be programmed to record not just financial transactions but virtually everything of value.
for more inforamation please visit our youtube channel
https://www.youtube.com/edit?o=U&video_id=EvICyArbFSs
www.rihusoft.com
A brief compare and contrast of why you may want to choose Hyperledger Fabric for your first foray into the world of building blockchain apps.
If you are interested in how to deploy your first Hello World chaincode, please visit the slides below for a step-by-step guide.
http://www.slideshare.net/Excelian/excelian-hyperledger-walkthroughfeb17
These slides were created by James Bowkett, Principal Consultant at Excelian.
Hyperledger Fabric Technical Deep Dive 20190618Arnaud Le Hors
Slides presented at the Hyperledger Fabric workshop in Barecelona on July 10th, 2019.
This introduces blockchain for business and describes in details the Hyperledger Fabric design principles, overall architecture, its components, and the transaction flow.
Developing applications with Hyperledger Fabric SDKHorea Porutiu
Intro to Hyperledger Fabric concepts. Will cover peers, orderer, state database, and certificate authority. Go over code examples of how to submit transactions on the network. Demo IBM Blockchain Starter Plan, Composer, and IBM Food Trust use-cases.
Hong Kong Hyperledger Meetup January 2018Tracy Kuhrt
Slides presented at the Hong Kong Hyperledger Meetup in January 2018 (https://www.meetup.com/Hyperledger-HK/events/246767267/) . This is a great opportunity to hear a leading blockchain expert address key technical developments, opportunities and challenges as we start 2018.
You will learn firsthand the latest developments in the global Hyperledger developer community and the progress of projects under the Hyperledger umbrella. Tracy will share latest details on the upcoming Hyperledger Sawtooth 1.0 release and roadmap for Hyperledger Fabric.
We hope you will join us to hear Tracy speak about Hyperledger projects today and what is in store in 2018 for the Hyperledger community, globally and in Asia Pacific, and how you can get involved.
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?Hacken_Ecosystem
HackIT is an annual cybersecurity conference that gathers the best technical researchers and top players in the cybersecurity industry to explore cutting-edge technologies together. In 2018, HackIT focused on the use of blockchain technology.
Join our community:
Website - https://hacken.live/hackit-slideshare
Twitter - https://hacken.live/twitter_hackit
Facebook - https://hacken.live/facebook_hackit
Instagram - https://hacken.live/instagram_hackit
Reddit - https://hacken.live/reddit
Telegram community - https://hacken.live/tg-hackit
#hackit #cybersecurity #blockchain #hacking
Hyperledger Explorer is a user friendly web application for hyperleger.User can query specific blocks and transactions.
for more inforamation please visit our youtube channel
https://www.youtube.com/edit?o=U&video_id=EvICyArbFSs
www.rihusoft.com
Gluecon 2016 Keynote: Deploying and Managing Blockchain ApplicationsDuncan Johnston-Watt
Blockchain technology has exploded on the business scene in the last few months notably with the establishment of the Hyperledger Project hosted by the Linux Foundation. We look at the background to this project; some of the challenges to its mainstream adoption; then wrap up with a demo deploying and managing a Hyperledger Fabric cluster using Apache Brooklyn.
The blockchain is an incorruptible digital ledger of economic transactions that can be programmed to record not just financial transactions but virtually everything of value.
for more inforamation please visit our youtube channel
https://www.youtube.com/edit?o=U&video_id=EvICyArbFSs
www.rihusoft.com
A brief compare and contrast of why you may want to choose Hyperledger Fabric for your first foray into the world of building blockchain apps.
If you are interested in how to deploy your first Hello World chaincode, please visit the slides below for a step-by-step guide.
http://www.slideshare.net/Excelian/excelian-hyperledger-walkthroughfeb17
These slides were created by James Bowkett, Principal Consultant at Excelian.
Hyperledger Fabric Technical Deep Dive 20190618Arnaud Le Hors
Slides presented at the Hyperledger Fabric workshop in Barecelona on July 10th, 2019.
This introduces blockchain for business and describes in details the Hyperledger Fabric design principles, overall architecture, its components, and the transaction flow.
Developing applications with Hyperledger Fabric SDKHorea Porutiu
Intro to Hyperledger Fabric concepts. Will cover peers, orderer, state database, and certificate authority. Go over code examples of how to submit transactions on the network. Demo IBM Blockchain Starter Plan, Composer, and IBM Food Trust use-cases.
Hong Kong Hyperledger Meetup January 2018Tracy Kuhrt
Slides presented at the Hong Kong Hyperledger Meetup in January 2018 (https://www.meetup.com/Hyperledger-HK/events/246767267/) . This is a great opportunity to hear a leading blockchain expert address key technical developments, opportunities and challenges as we start 2018.
You will learn firsthand the latest developments in the global Hyperledger developer community and the progress of projects under the Hyperledger umbrella. Tracy will share latest details on the upcoming Hyperledger Sawtooth 1.0 release and roadmap for Hyperledger Fabric.
We hope you will join us to hear Tracy speak about Hyperledger projects today and what is in store in 2018 for the Hyperledger community, globally and in Asia Pacific, and how you can get involved.
Dejan Podgorsek - Is Hyperledger Fabric secure enough for your Business?Hacken_Ecosystem
HackIT is an annual cybersecurity conference that gathers the best technical researchers and top players in the cybersecurity industry to explore cutting-edge technologies together. In 2018, HackIT focused on the use of blockchain technology.
Join our community:
Website - https://hacken.live/hackit-slideshare
Twitter - https://hacken.live/twitter_hackit
Facebook - https://hacken.live/facebook_hackit
Instagram - https://hacken.live/instagram_hackit
Reddit - https://hacken.live/reddit
Telegram community - https://hacken.live/tg-hackit
#hackit #cybersecurity #blockchain #hacking
Hyperledger Explorer is a user friendly web application for hyperleger.User can query specific blocks and transactions.
for more inforamation please visit our youtube channel
https://www.youtube.com/edit?o=U&video_id=EvICyArbFSs
www.rihusoft.com
Gluecon 2016 Keynote: Deploying and Managing Blockchain ApplicationsDuncan Johnston-Watt
Blockchain technology has exploded on the business scene in the last few months notably with the establishment of the Hyperledger Project hosted by the Linux Foundation. We look at the background to this project; some of the challenges to its mainstream adoption; then wrap up with a demo deploying and managing a Hyperledger Fabric cluster using Apache Brooklyn.
Trading derivatives on a decentralized system aims for high
availability (HA) and disaster recovery (DR). Both HA and DR can be
met by incorporating a blockchain and a container technology. The
Hyperledger is a blockchain framework aims for a cross-industry open
standard with the freely customizable plugins, smart contract, and the
data payload. Those features exposes us the easy ways to implement our
trading platform on a blockchain. The Docker was brought to handle
each specific Hyperledger chain internally. Also, hovering the whole
Hyperledger nodes with containers reduce our time in building
infrastructure, and much easier to be deployed on the production
environment. This presentation will show how we integrate the
Hyperledger and the Docker container for our derivatives trading
project, and the issues that we are focusing on. Additionally, the
talk partially includes the performance evaluation results under
different configurations.
This talk was delivered at LinuxCon Japan 2016 by Siriwat Kasamwattanarote, Thierry Gibralta, Vsevolod Yugov, Shibo Lin, Hideaki Takei, and Fernando Vazquez
Video: https://www.youtube.com/watch?v=9mVcWps1VQ0
First presented at the Ethereum Palo Alto meetup on August 7, 2016: http://www.meetup.com/EthereumSiliconValley/events/233053122/
All citations and references can be found in the Notes section.
I would like to thank Ian Grigg for his constructive feedback on these slides.
Introduction to Blockchain and the Hyperledger ProjectManuel Garcia
Does The Hyperledger Project have the potential to become the engine behind most successful decentralized applications and organizations created in the next 25-50 years? Absolutely!
A much better question is how, and in what new ways, can we:
a) Build decentralized applications, organizations and APIs at 10x the speed at 1/10 the cost.
b) Build situational awareness in the local community.
I believe that the convergence of decentralized applications, decentralized organizations, artificial intelligence and IoT brings upon us the Great Displacement of the 21st century, where the majority of workforce will be left without “conventional” jobs, forced to learn new skills and professions. Why?
Founders of this group believe that the Hyperledger Foundation will be the engine behind decentralization of the world, a massive economic change of the next 25-50 years.
So.... why don't we standardize and democratize the field with and around Hyperledger?
What?
We are a local micro community of those interested in advancing their knowledge of Hyperledger, its use cases and applications.
How?
Join our group for a regular dose of human interaction, conversations, smiles, food and drinks on all things Hyperledger:
• Use Cases
• Competitive analysis of Hyperledger startups (Distributed Apps from disruptive companies in specific vertical markets)
• How-To’s
• Interviews with individuals working at the edge of the Hyperledger project
• Reviews of tools, services and APIs offered by the Hyperledger ecosystem
• Best Practices in Application Architecture
• Do’s and Don’ts
• Application Templates
• Hackathons
• Security in the decentralized world - on the edge, on the node, in the cloud and in transit
• How others solve some of the hard problems that exist in the world using Hyperledger.
https://www.hyperledger.org
https://github.com/hyperledger
Join the movement. Let’s change the world. Because with Hyperledger we can.
This slides belong to a presentation done by Manuel Garcia @ http://www.meetup.com/HyperLedger-and-Blockchain-Apps-Buenos-Aires
JDD2015: Kubernetes - Beyond the basics - Paul BakkerPROIDEA
KUBERNETES - BEYOND THE BASICS
Kubernetes has answers to many questions related to clustering and the required low-level networking. When using Kubernetes for real live deployments we need more than those lower-level solutions however. We need things like automated deployments, load balancing for web applications, blue/green deployments and monitoring.
This is all possible with Kubernetes when we start to look at Kubernetes as an API. In this talk you will learn to embrace the Kuberentes API and some of the patterns, tools and mechanisms we developed and use around Kubernetes to prepare for production grade deployments.
In addition to authorization policies that control what a user can do, OpenShift Container Platform gives its administrators the ability to manage a set of security context constraints (SCCs) for limiting pods and securing their cluster.
Default security context may be too restrictive for containers pulled down from DockerHub, thorugh this talk we'll explore the various steps to execute for enabling required permissions on selected OpenShift's pods.
Overview of Docker 1.11 features(Covers Docker release summary till 1.11, runc/containerd, dns load balancing ipv6 service discovery, labels, macvlan/ipvlan)
Setup of the Docker environment on a Node.js application. Several components are used: Docker Machine, Dockerfile, Docker Compose, libnetwork, Docker Swarm, setup of a load balancing with HAProxy / Interlock
Microservices DevOps on Google Cloud PlatformSunnyvale
A typical CI/CD development process built on top of Google Cloud Platform to deliver a Java microservice using Helidon.io native-compiled with GraalVM and scheduled on a Google Kubernetes Engine cluster.
Introduction to Docker - Learning containerization XP conference 2016XP Conference India
Docker is an open-source platform which provides a great way to package and deploy applications. With its lightweight resource consumption pattern, it helps in making CI/CD environments faster and predictable. Learn how to setup Docker and deploy a basic web application.
Настройка окружения для кросскомпиляции проектов на основе docker'acorehard_by
Как быстро и легко настраивать/обновлять окружения для кросскомпиляции проектов под различные платформы(на основе docker), как быстро переключаться между ними, как используя эти кирпичики организовать CI и тестирование(на основе GitLab и Docker).
The Nova driver for Docker has been maturing rapidly since its mainline removal in Icehouse. During the Juno cycle, substantial improvements have been made to the driver, and greater parity has been reached with other virtualization drivers. We will explore these improvements and what they mean to deployers. Eric will additionally showcase deployment scenarios for the deployment of OpenStack itself inside and underneath of Docker for powering traditional VM-based computing, storage, and other cloud services. Finally, users should expect a preview of the planned integration with the new OpenStack Containers Service effort to provide automation of advanced containers functionality and Docker-API semantics inside of an OpenStack cloud.
Note that the included Heat templates are NOT usable. See the linked Heat resources for viable templates and examples.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
2. Architecture
Fabric has several framework
components:
Membership services for security:
audit, registration & identity
management
Blockchain services: Consensus,
Storage & transactions
Chaincode services: Secure
container & registry
For the hackathon we will focus on
the container and blockchain
storage
2
Chaincode
REST ENDPOINTS
Hyperledger-java
API
Application code
ValidatingPeerNode
Dockercontainer RocksDB storage
Other
Validating
PeersREST
Consensus
Consensus
Consensus
3. Prerequisites
Docker (I tested on 1.12.1 on Mac OS X)
Docker Compose (kitematic is also helpful)
Java/Golang environment for chaincode development (I used JDK 8 + Gradle 3.2)
For application development:
Java/Golang environment
Your favourite development language, as long as you have a REST API available
This guide loosely based on:
http://hyperledger-fabric.readthedocs.io/en/latest/starter/fabric-starter-kit/
3
4. The Environment
4
Starter
container
Member SVCs
Peer node
Container for the member
security services (not strictly
required for the hackathon)
Runs and builds the Fabric Shim
for interaction with Fabric
Runs and builds the java
chaincode
Requires Java + gradle to be
installed in the container
Deploys the Java chaincode
running on peer node into
Fabric
Used for executing
commands against the
running chaincode
5. Docker-compose.yml
membersrvc:
# try 'docker ps' to see the container status after starting this compose
container_name: membersrvc
image: hyperledger/fabric-membersrvc
command: membersrvc
environment:
- COMPOSE_HTTP_TIMEOUT=120
volumes:
- /Users/jbowkett/Documents/Excelian/blockchain/dev-team/git-clone/smart-cheques/starter-
kit/docker-containers/mapped-fs-member:/user/docker-containers/mapped-fs-member
peer:
container_name: peer
image: hyperledger/fabric-peer
environment:
- CORE_PEER_ADDRESSAUTODETECT=true
- CORE_VM_ENDPOINT=unix:///var/run/docker.sock
- CORE_LOGGING_LEVEL=DEBUG
- CORE_PEER_ID=vp0
- CORE_SECURITY_ENABLED=false
# - CORE_SECURITY_PRIVACY=false
- CORE_PEER_PKI_ECA_PADDR=membersrvc:7054
- CORE_PEER_PKI_TCA_PADDR=membersrvc:7054
- CORE_PEER_PKI_TLSCA_PADDR=membersrvc:7054
- CORE_PEER_VALIDATOR_CONSENSUS_PLUGIN=noops
- COMPOSE_HTTP_TIMEOUT=120
# this gives access to the docker host daemon to deploy chain code in network mode
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /Users/jbowkett/Documents/Excelian/blockchain/dev-team/git-clone/smart-cheques/starter-
kit/docker-containers/mapped-fs-peer:/user/docker-containers/mapped-fs-peer
5
# have the peer wait 10 sec for membersrvc to start
# the following is to run the peer in Developer mode - also set sample DEPLOY_MODE=dev
command: sh -c "sleep 10; peer node start --peer-chaincodedev"
#command: sh -c "sleep 10; peer node start"
links:
- membersrvc
ports:
- "5005:5005"
starter:
container_name: starter
image: hyperledger/fabric-starter-kit
volumes:
# tweak this to map a local development directory tree into the container
- /Users/jbowkett/Documents/Excelian/blockchain/dev-team/git-clone/smart-cheques/starter-
kit/docker-containers/mapped-fs-starter:/user/docker-containers/mapped-fs-starter
environment:
- MEMBERSRVC_ADDRESS=membersrvc:7054
- PEER_ADDRESS=peer:7051
- KEY_VALUE_STORE=/tmp/hl_sdk_node_key_value_store
# set to following to 'dev' if peer running in Developer mode
- COMPOSE_HTTP_TIMEOUT=120
- DEPLOY_MODE=dev
- CORE_CHAINCODE_ID_NAME=mycc
- CORE_PEER_ADDRESS=peer:7051
# the following command will start the chain code when this container starts and ready it for
deployment by the app
# command: sh -c "sleep 20;
/opt/gopath/src/github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02/chai
ncode_example02"
stdin_open: true
tty: true
links:
- membersrvc
- peer
6. Bootstrap the Docker environments
Edit the volumes sections of your docker-compose.yml to map appropriate
directories for getting code onto your nodes
Make sure those paths exist on your development (and “production” machine)
Go to the directory the docker-compose.yml is installed:
$ docker-compose up -d
6
10. Install the chaincode shim into the gradle repo
peer$ cd $GOPATH/src/github.com/hyperledger/fabric/core/chaincode/shim/java
peer$ gradle clean build
10
11. The story so far….
We’ve created the 3 Hyperledger docker containers (starter, membersvc and peer)
with mounted directories on our development machine
Provisioned the peer node by installing the correct version of Java and Gradle
Built the Hyperledger shim on the peer node and installed it as an available
dependency for later Gradle builds on the peer node
Now let’s deploy an example chaincode application….
11
12. Install your chaincode on the peer node and run the service
import org.hyperledger.java.shim.ChaincodeBase;
import org.hyperledger.java.shim.ChaincodeStub;
public class HelloWorldChaincode extends ChaincodeBase {
public HelloWorldChaincode() { }
public String run(ChaincodeStub chaincodeStub, String function, String[] args) {
return "hello world!";
}
public String query(ChaincodeStub chaincodeStub, String function, String[] args) {
return "hello world query";
}
public String getChaincodeID() {
return "HelloWorldChaincode";
}
public static void main(String[] args) {
new HelloWorldChaincode().start(args);
}
}12
$ cp <hello world chaincode src> <mapped dir for peer>
14. A quick recap….
1. Create the 3 Hyperledger Docker containers (starter, membersvc and peer) with
mapped directories to our development machine
2. Provision the peer node by logging into the Docker container and installing the
correct version of Java and Gradle
3. Build the Hyperledger shim on the peer node and install it as an available
dependency for later Gradle builds on the peer node
4. Create a HelloWorld chaincode on our development machine & copy the code+build
script to the peer node using our Docker mapped-directory
5. On the starter node, deploy the chaincode into Fabric, and then use the starter node
to query the running chaincode within fabric
14
15. Some APIs and Examples to be aware of
Table creation:
final List<TableProto.ColumnDefinition> columnDefs = new ArrayList<>();
columnDefs.add(newBuilder().setName("hash").setKey(true).setType(STRING).build());
columnDefs.add(newBuilder().setName("messages").setKey(false).setType(STRING).build());
final boolean success = chaincodeStub.createTable(TABLE_NAME, columnDefs);
Lookup is based on the key column only
https://github.com/hyperledger/fabric/tree/master/examples/chaincode/java
Examples:
LinkExample – Invoking one chaincode from another
MapExample – Simple map storage
RangeExample – Query storage with range
SimpleExample – Transferring value using Arguments
TableExample – C/R/D Using underlying storage tables
15
16. Useful links
https://docs.docker.com/engine/installation/
https://docs.docker.com/engine/installation/linux/linux-postinstall/ Important on
Linux if running Docker on boot
http://hyperledger-fabric.readthedocs.io
http://hyperledger-fabric.readthedocs.io/en/latest/starter/fabric-starter-kit/
https://github.com/jbowkett/zug-hackathon
https://github.com/hyperledger/fabric/tree/master/examples/chaincode/java
https://gradle.org/documentation/
16