Getting started with Docker / docker-compose and Laravel to build an application within a Docker image. Including difference of production and development build stages.
Mastering xPaaS - get down and dirty in the OpenShift Cloud (part I)Eric D. Schabell
Ever wondered about all the new Cloud offerings out there? What is a PaaS? What is this thing Garner keeps calling xPaaS? How can I as a beginner get started in a few hours?
Whether your business is running on applications based on Java EE6, PHP or Ruby, the cloud is turning out to be the perfect environment for developing your business. There are plenty of clouds and platform-as-a-services to choose from, but where to start?
Join us for three action-packed hours of power where we'll show you how to deploy your existing application written in the language of your choice - Java, Ruby, PHP, Perl or Python, with the project of your choice - jBPM, Ceylon, Switchyard, Drools Planner, Aerogear, GateIn, Drools (Rules / BPM) and more deployed into the OpenShift PaaS in just minutes. All this and without having to rewrite your app to get it to work the way the cloud provider thinks your app should work.
If you want to learn about xPaaS and see how investing just a few hours of your time can change everything you thought you knew about putting your business applications in the cloud, this session is for you!
(Part I of II, for part II see: http://www.slideshare.net/eschabell/devoxx-masteringx-paaspartii)
Introduction to one of the most established DevOps tools, Docker. First part is introduction to Docker itself, part two contains installation instructions of Docker for Windows. Part three gives example how easy it is for anyone to benefit from Docker and dockerized applications. Fourth part is example how easily developer can create development environment for themselves with aid from Docker.
Getting started with Docker / docker-compose and Laravel to build an application within a Docker image. Including difference of production and development build stages.
Mastering xPaaS - get down and dirty in the OpenShift Cloud (part I)Eric D. Schabell
Ever wondered about all the new Cloud offerings out there? What is a PaaS? What is this thing Garner keeps calling xPaaS? How can I as a beginner get started in a few hours?
Whether your business is running on applications based on Java EE6, PHP or Ruby, the cloud is turning out to be the perfect environment for developing your business. There are plenty of clouds and platform-as-a-services to choose from, but where to start?
Join us for three action-packed hours of power where we'll show you how to deploy your existing application written in the language of your choice - Java, Ruby, PHP, Perl or Python, with the project of your choice - jBPM, Ceylon, Switchyard, Drools Planner, Aerogear, GateIn, Drools (Rules / BPM) and more deployed into the OpenShift PaaS in just minutes. All this and without having to rewrite your app to get it to work the way the cloud provider thinks your app should work.
If you want to learn about xPaaS and see how investing just a few hours of your time can change everything you thought you knew about putting your business applications in the cloud, this session is for you!
(Part I of II, for part II see: http://www.slideshare.net/eschabell/devoxx-masteringx-paaspartii)
Introduction to one of the most established DevOps tools, Docker. First part is introduction to Docker itself, part two contains installation instructions of Docker for Windows. Part three gives example how easy it is for anyone to benefit from Docker and dockerized applications. Fourth part is example how easily developer can create development environment for themselves with aid from Docker.
OpenShift State of the Union, brought to you by JBossEric D. Schabell
It has been a marriage made in heaven. JBoss has brought the enterprise application platform and JEE to the OpenShift PaaS for all of your development tasks. It is much more than a simple application server though, JBoss provides a multitude of projects that cover everything from mobile, business process management, web development, support tooling to inter connectivity with other development languages like Ruby.
This session will take you through an overview of what OpenShift has to offer right now, how to get started, and then provide some highlights of the various projects that you can now access within the JBoss community. Bring you laptop and follow along as we help you get started in mobile development with Aerogears, Ruby Java connectivity with TorqueBox, process development with tooling from jBPM and much more. These will all be real world projects put on display for you with code you can access live during this session!
Bringing Javascript to the Desktop with ElectronNir Noy
After Node.js brought JavaScript to the server, it was only inevitable that someone would take it to the next level and bring it to our desktop. And indeed this day has come. With the help of GitHub's Electron, front-end developers can now create fully featured desktop applications using JavaScript, HTML and CSS. In this talk, we'll go over the basics of developing an Electron app, talk about how Electron works under the hood and show how to build it and package it
How docker change organization of development and ops teams
What is the point for developers when it comes to interactions with underlying system and application dependencies
Lessons learnt by @EnaleanTeam on mytuleap.com experience
An overview of the steps required to build Javascript apps before and get them ready for deployment. It explains how Grunt helps us to validate, minimize and package our code.
So you've built your neato Ratpack microservices, but it's already 5 o`clock and you're still fighting your way through testing, deployment and interaction instead of having your usual at the bar; What a PITA! In this talk I'll show you how to harness the power of Gradle and Docker to ease you through service orchestration and make it to the bar on time for happy hour!
"Clean Code" by Bob Martin is probably one of the most important practical documents out there; A must read for all developers, if you will. In this talk I will show how you can use Groovy and its rich ecosystem to apply the discussed principals, thus cleaning and vastly improving your codebase while still maintaining your sanity and joy.
By Noam Tenne
A practical workflow using Bower and Grunt that keeps your vendor folder clean, copies your assets in different locations and makes your dependency management an easy task.
Welcome to episode 1, Grunt JS - Getting Started with Grunt.
The purpose of this presentation/video is to give you an introduction to Grunt, provide a guide that will help reduce your ramp-up time in getting started, and show some of the benefits of task automation.
IBM Index 2018 Conference Workshop: Modernizing Traditional Java App's with D...Eric Smalling
Slides from my 2.5 hour hands-on workshop covering Docker basics, the Docker MTA program and how it applies to legacy Java applications and some tips on running those apps in containers in production.
Dalle applicazioni desktop al web ed alle architetture multi tier. Dallo sviluppo basato sui componenti alle service oriented architecture… I Microservices saranno la soluzione vincente?
OpenShift State of the Union, brought to you by JBossEric D. Schabell
It has been a marriage made in heaven. JBoss has brought the enterprise application platform and JEE to the OpenShift PaaS for all of your development tasks. It is much more than a simple application server though, JBoss provides a multitude of projects that cover everything from mobile, business process management, web development, support tooling to inter connectivity with other development languages like Ruby.
This session will take you through an overview of what OpenShift has to offer right now, how to get started, and then provide some highlights of the various projects that you can now access within the JBoss community. Bring you laptop and follow along as we help you get started in mobile development with Aerogears, Ruby Java connectivity with TorqueBox, process development with tooling from jBPM and much more. These will all be real world projects put on display for you with code you can access live during this session!
Bringing Javascript to the Desktop with ElectronNir Noy
After Node.js brought JavaScript to the server, it was only inevitable that someone would take it to the next level and bring it to our desktop. And indeed this day has come. With the help of GitHub's Electron, front-end developers can now create fully featured desktop applications using JavaScript, HTML and CSS. In this talk, we'll go over the basics of developing an Electron app, talk about how Electron works under the hood and show how to build it and package it
How docker change organization of development and ops teams
What is the point for developers when it comes to interactions with underlying system and application dependencies
Lessons learnt by @EnaleanTeam on mytuleap.com experience
An overview of the steps required to build Javascript apps before and get them ready for deployment. It explains how Grunt helps us to validate, minimize and package our code.
So you've built your neato Ratpack microservices, but it's already 5 o`clock and you're still fighting your way through testing, deployment and interaction instead of having your usual at the bar; What a PITA! In this talk I'll show you how to harness the power of Gradle and Docker to ease you through service orchestration and make it to the bar on time for happy hour!
"Clean Code" by Bob Martin is probably one of the most important practical documents out there; A must read for all developers, if you will. In this talk I will show how you can use Groovy and its rich ecosystem to apply the discussed principals, thus cleaning and vastly improving your codebase while still maintaining your sanity and joy.
By Noam Tenne
A practical workflow using Bower and Grunt that keeps your vendor folder clean, copies your assets in different locations and makes your dependency management an easy task.
Welcome to episode 1, Grunt JS - Getting Started with Grunt.
The purpose of this presentation/video is to give you an introduction to Grunt, provide a guide that will help reduce your ramp-up time in getting started, and show some of the benefits of task automation.
IBM Index 2018 Conference Workshop: Modernizing Traditional Java App's with D...Eric Smalling
Slides from my 2.5 hour hands-on workshop covering Docker basics, the Docker MTA program and how it applies to legacy Java applications and some tips on running those apps in containers in production.
Dalle applicazioni desktop al web ed alle architetture multi tier. Dallo sviluppo basato sui componenti alle service oriented architecture… I Microservices saranno la soluzione vincente?
Containers, Docker, and Microservices: the Terrific TrioJérôme Petazzoni
One of the upsides of Microservices is the ability to deploy often,at arbitrary schedules, and independently of other services, instead of requiring synchronized deployments happening on a fixed time.
But to really leverage this advantage, we need fast, efficient, and reliable deployment processes. That's one of the value propositions of Containers in general, and Docker in particular.
Docker offers a new, lightweight approach to application portability.It can build applications using easy-to-write, repeatable, efficient recipes; then it can ship them across environments using a common container format; and it can run them within isolated namespaces which abstract the operating environment, independently of the distribution,versions, network setup, and other details of this environment.
But Docker can do way more than deploy your apps. Docker also enables you to generalize Microservices principles and apply them on operational tasks like logging, remote access, backups, and troubleshooting.This decoupling results in independent, smaller, simpler moving parts.
The Tale of a Docker-based Continuous Delivery Pipeline by Rafe Colton (ModCl...Docker, Inc.
The ModCloth Platform team has been building a Docker-based continuous delivery pipeline. This presentation discusses that project and how we build containers at ModCloth. The topics include what goes into our containers; how to optimize builds to use the Docker build cache effectively; useful development workflows (including using fig); and the key decision to treat containers as processes instead of mini-vms. This presentation will also discuss (and demo!) the workflow we’ve adopted for building containers and how we’ve integrated container builds with our CI.
My talk from Dockercon EU in Amsterdam, Dec 2014. Original abstract:
The ModCloth Platform team has been building a Docker-based continuous delivery pipeline. This presentation discusses that project and how we build containers at ModCloth. The topics include what goes into our containers; how to optimize builds to use the Docker build cache effectively; useful development workflows (including using fig); and the key decision to treat containers as processes instead of mini-vms. This presentation will also discuss (and demo!) the workflow we’ve adopted for building containers and how we’ve integrated container builds with our CI.
Extending DevOps to Big Data Applications with KubernetesNicola Ferraro
DevOps, continuous delivery and modern architectural trends can incredibly speed up the software development process. Big Data applications cannot be an exception and need to keep the same pace.
Behaviour Driven Development con Behat & Drupalsparkfabrik
Il Behaviour Driven Development è una pratica di sviluppo software nella quale i comportamenti della propria applicazione vengono descritti con un linguaggio chiaro e comprensibile a tutti. Grazie a Behat, questi scenari si trasformano in test veri e propri che possono essere eseguiti sulle nostre applicazioni Drupal.
The Self-Service Developer - GOTOCon CPHLaszlo Fogas
The Self-Service Developer
In this talk, Laszlo revisits the primary motivations of why companies adopt container technologies in such a rapid pace and what became possible with the latest innovation in the container and CI/CD ecosystem.
The talk iterates through the building blocks of self-service platforms. Platforms that allow developers to release software without asking for permission, or support from other teams or departments - so managers have fewer constraints to navigate, and instead of helping developers, ops people can focus on building platforms and resiliency into the system.
The "self-service developer" vision is not only achievable by the big tech companies anymore, but increasingly becoming table stakes for every organization that produces software.
During the talk, Laszlo shows a self-service platform in action featuring the latest CI/CD tools and the Kubernetes container orchestrator.
Introduction to the Eclipse scripting tool Groovy Monkey. Groovy Monkey allows for you to engage in API exploration, Task Automation, Plugin prototyping and collaboration in a lightweight and simple way.
Evolving to serverless
How the applications are transforming
A note on CI/CD
Architecture of Docker
Setting up a docker environment
Deep dive into DockerFile and containers
Tagging and publishing an image to docker hub
A glimpse from session one
Services: scale our application and enable load-balancing
Swarm: Deploying application onto a cluster, running it on multiple machines
Stack: A stack is a group of interrelated services that share dependencies, and can be orchestrated and scaled together.
Deploy your app: Compose file works just as well in production as it does on your machine.
Extras: Containers and VMs together
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...Codemotion
In less than two years Docker went from first line of code to major Open Source project with contributions from all the big names in IT. Everyone is excited, but what's in for me - as a Dev or Ops? In short, Docker makes creating Development, Test and even Production environments an order of magnitude simpler, faster and completely portable across both local and cloud infrastructure. We will start from Docker main concepts: how to create a Linux Container from base images, run your application in it, and version your runtimes as you would with source code, and finish with a concrete example.
CoffeeScript: A beginner's presentation for beginners copyPatrick Devins
A short presentation on CoffeeScript for people who may not have much, or any, experience with it. It is a great way to learn JavaScript, as well as a fantastic syntactic sugar fro those who already know JavaScript.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
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.
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.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
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.
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.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
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.
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
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Leading Change strategies and insights for effective change management pdf 1.pdf
MeCab in docker action(OpenWhisk)
1. MECAB IN DOCKERACTION!!!
USING DOCKERACTION OF IBM
CLOUD FUNCTIONS ( OPENWHISK )
2017.10.19 Bluemix User Group Tsukiji,Japan#1
2. ABOUT MYSELF
(KUNITO Atsunori)
Atsunori_kunito@niandc.co.jp
I’m a Java programmer at NI and C Soft.inc.
We are Nippon Information and Communication
Corporation Group.
4. MY PRIVATE PROJECT
I was creating a personal tool which monitoring google
search ranking everyday. It works on Bluemix -
OpenWhisk.
Next , I’d like to extract frequently appeared keyword
from the top 50 web pages.
I wish I used Watson - Natural Language
Understanding(NLU). But the NLU doesn’t support
Japanese!!!
5. SOLUTION – WHAT IS MECAB?
MeCab: Yet Another Part-of-Speech and Morphological
Analyzer(http://taku910.github.io/mecab/)
MeCab is OSS which is created by Taku Kudo.
Japanese has no separator(space) between word each
other.
So I can count frequency of the words with the MeCab.
6. DOCKER ACTION
MeCab is written in C++. How do I run this tool on
Cloud?
Docker Action !!!
wsk action update
wsk action invoke
/init Init process
Run MeCab/run
9. STEP 1) MAKE DOCKERFILE
Key Learnings:
Use ‘openwhisk/dockerskeleton’ as base image.
Inject MeCab , dependencys and other tools(if needed) to
your docker image.
Your docker image will be uploaded to
DockerHub(https://hub.docker.com/) and will be
PUBLIC. So You SHOULD NOT include private
informations. Be aware to password , API-key etc…
Lunch actionproxy.py. It’s contained in
‘openwhisk/dockerskeleton’ .
10. DOCKERFILE
FROM openwhisk/dockerskeleton
RUN apk add --no-cache gcc libc-dev g++
RUN apk add --no-cache --virtual .build-deps git make ¥
&& apk add --no-cache libxml2-dev libxslt-dev
# install mecab
RUN cd /tmp && ¥
git clone https://github.com/taku910/mecab.git
RUN cd /tmp/mecab/mecab && ¥
./configure --enable-utf8-only && ¥
make && ¥
make install
RUN echo 'export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"' >> ~/.bashrc && ¥
. ~/.bashrc && ¥
cd /tmp/mecab/mecab-ipadic && ¥
./configure --with-charset=utf8 && ¥
make && ¥
make install
RUN pip install --no-cache-dir lxml
RUN pip install --no-cache-dir requests
RUN pip install --no-cache-dir beautifulsoup4
RUN apk del .build-deps
CMD ["/bin/bash", "-c", "cd actionProxy && python -u actionproxy.py"]
11. STEP 2) PUSH YOUR DOCKER IMAGE AND
CREATE ACTION
Create an account in DockerHub(if you didn’t have it).
docker build -t openwhiskdatest/mecabda .
docker login
docker push openwhiskdatest/mecabda
bx wsk action create wskMeCabDH --docker openwhiskdatest/mecabda
12. STEP 3) WRITE AN ENTRY POINT OF YOUR
ACTION
I wrote web crawler with Beautiful Soup and lxml in
python.
Execute the MeCab.
Make MeCab’s outputs into single-lined-JSON format. I
wrote this process in python too.
Finally , I wrote BASH script which organize those
programs described above. This script must be named
‘exec’.
13. STEP 4) CREATE ZIP FILE AND DEPLOY IT
Package programs described in step 3 into a zip file.
Upload it to your action.
Actionproxy.py receive the zip file. Then It extracts and
deploys contained programs.
bx wsk action update wskMeCabDH exec.zip --docker openwhiskdatest/mecabda
14. NOW WE CAN INVOKE DOCKER ACTION !!!
bx wsk action invoke wskMeCabDH --blocking --result -p "url" https://bmxug.connpass.com/event/66961/
15. IT WORKS ON MY PROJECT
Google search word is ‘OpenWhisk’.
Crawling top 50 web pages.
Extract frequently appeared keyword.
It’s represented with wordcloud2 in R.
Can you read ‘Lambda’?
It shows many sites about Openwhisk
compare with Lambda , I guess.
17. CONCLUSION
Key Learnings:
Docker Action is great way to execute some binaries on
Bluemix.
Every Openwhisk actions are implemented on Docker
Action. In other words , Action Runtime is a pre-defined
Docker Action for specific programming language.
18. USECASE OF DOCKER ACTION
Execute some binaries or shell scripts on Bluemix, of
course.
You can create your runtime which supports your
favorite programing language.
If you wanted to use some dependencies which are
unsupported in runtime , You can create a dockerfile to
inject those dependencies.