SlideShare une entreprise Scribd logo
1  sur  24
Building SPFx solutions using Docker
Jenkins NS
Architect @ Cognizant
SharePoint & Office 365 Solution Consultant, Speaker and Blogger.
My Blogs : http://jenkinsblogs.com/
@jenkinsns
AGENDA
BENEFITS OF USING DOCKER IN THE SPFX DEVELOPMENT
1 BACKGROUND
2
DOCKER IMAGE FOR YOUR SPFX TEAM
3
WHAT IS DOCKER?
CREATE DOCKER IMAGE FOR SPFX4
5
6
7
DEMO
NEXT STEPS
Background
 Drop 1, Drop 2, Drop 3, Drop 4, Drop 5, Drop 6, RC0
 GA(1.0.0), 1.0.1, 1.0.2, 1.1.0, 1.1.1, 1.1.3, 1.2.0, 1.3.0, 1.3.1, 1.3.2, 1.3.4, 1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.6,
1.7.0, 1.7.1
What is Docker?
Benefits of using docker in the
SharePoint Framework development
Preparing SPFx development environment
Preparing the Docker Development environment
https://hub.docker.com/
Create SPFx Docker Image
 FROM node:8.11.3
 EXPOSE 5432 4321 35729
 RUN npm i -g gulp yo @microsoft/generator-
sharepoint@1.5.1
 VOLUME /usr/app/spfx and WORKDIR /usr/app/spfx
 RUN
Reference : https://docs.docker.com/engine/reference/builder/#environment-replacement
Docker file : https://github.com/jenkinsns/dockerSPFx/blob/master/Dockerfile
Create SPFx Docker Image …
 PS C:JenkinsSPFxDocker> docker
 PS C:JenkinsSPFxDocker> docker build -t jenkinsns/spfx:1.5.1 .
PS C:JenkinsSPFxDocker> docker images
 PS C:JenkinsSPFxDocker> docker tag be7d150e0bf7 jenkinsns/spfx:1.5.1
 PS C:JenkinsSPFxDocker> docker images
Create SPFx Docker Image…
 PS C:JenkinsSPFxDocker> Docker login
 PS C:JenkinsSPFxDocker> docker push jenkinsns/spfx:1.5.1
 PS C:JenkinsSPFxDocker> docker push jenkinsns/spfx:latest
 PS C:JenkinsSPFxDocker>docker run -it --rm --name spfx -v ${PWD}:/usr/app/spfx -p
5432:5432 -p 4321:4321 -p 35729:35729 jenkinsns/spfx:1.5.1
Docker Image for your SPFx team
https://hub.docker.com/r/jenkinsns/spfx/tags/
Lets do it
https://store.docker.com/editions/community/docker-ce-
desktop-windows
Usage
 Open Windows Powershell
 PS C:JenkinsSPFxDockerprojects> docker run -it --rm --name spfx -v
/c/jenkins/spfx/docker/projects:/usr/app/spfx -p 5432:5432 -p 4321:4321 -p
35729:35729 jenkinsns/spfx:1.5.1
 You will see the SPFx image being downloaded from the github. This might take few
minutes for the first time. Once the image is downloaded it will run inside a container and
you will be given the command prompt of the linux VM(which has all the SPFx dev tools
pre-installed)
 Now our Virtual machine is ready
Build SharePoint Framework Solution
 spfx@910eaf6fa674:/usr/app/spfx$ yo @microsoft/sharepoint
 spfx@f7cc6adfd5a6:/usr/app/spfx$ gulp serve
 To close the container in the container cmd line run:
exit
Things you need to know
https://localhost:5432/workbench
Can't access workbench and bundles in SharePoint Framework 1.6.0/1.7.0 on Windows
Can't access workbench and bundles in SharePoint Framework 1.5.0
Next Steps
https://docs.docker.com/engine/reference/builder/
Reference
https://hub.docker.com/r/waldekm/spfx/tags/
https://github.com/waldekmastykarz/docker-spfx
https://blog.mastykarz.nl/sharepoint-framework-
docker-image-your-team/
https://docs.microsoft.com/en-us/sharepoint/dev/spfx/team-based-
development-on-sharepoint-framework
https://developer.microsoft.com/en-us/office/blogs/using-docker-in-
sharepoint-framework-development/
http://jenkinsblogs.com
Building SPFx Solutions using Docker
Building SPFx Solutions using Docker

Contenu connexe

Tendances

Presentation1.pptx, radiological imaging of hydrocephalus.
Presentation1.pptx, radiological imaging of hydrocephalus.Presentation1.pptx, radiological imaging of hydrocephalus.
Presentation1.pptx, radiological imaging of hydrocephalus.
Abdellah Nazeer
 
Fifteen (50) intracranial cystic lesion Dr Ahmed Esawy CT MRI main
Fifteen (50) intracranial cystic lesion Dr Ahmed Esawy CT MRI main Fifteen (50) intracranial cystic lesion Dr Ahmed Esawy CT MRI main
Fifteen (50) intracranial cystic lesion Dr Ahmed Esawy CT MRI main
AHMED ESAWY
 
Anatomy of cerebrum
Anatomy of cerebrumAnatomy of cerebrum
Anatomy of cerebrum
Shuhadah Ros
 

Tendances (20)

Neurophysiology lecture
Neurophysiology lectureNeurophysiology lecture
Neurophysiology lecture
 
Presentation1.pptx, radiological imaging of hydrocephalus.
Presentation1.pptx, radiological imaging of hydrocephalus.Presentation1.pptx, radiological imaging of hydrocephalus.
Presentation1.pptx, radiological imaging of hydrocephalus.
 
Blood supply of brain
Blood supply of brainBlood supply of brain
Blood supply of brain
 
Neuroanatomy: Cerebellum
Neuroanatomy: CerebellumNeuroanatomy: Cerebellum
Neuroanatomy: Cerebellum
 
Diagnostic Imaging of Hydrocephalus & Pneumocephalus
Diagnostic Imaging of Hydrocephalus & PneumocephalusDiagnostic Imaging of Hydrocephalus & Pneumocephalus
Diagnostic Imaging of Hydrocephalus & Pneumocephalus
 
EMBRYOLOGY OF BRAIN,NEW
EMBRYOLOGY OF BRAIN,NEWEMBRYOLOGY OF BRAIN,NEW
EMBRYOLOGY OF BRAIN,NEW
 
Cerebrum & lateral ventricle
Cerebrum & lateral ventricleCerebrum & lateral ventricle
Cerebrum & lateral ventricle
 
Diagnostic Imaging of Brain Tumors
Diagnostic Imaging of Brain TumorsDiagnostic Imaging of Brain Tumors
Diagnostic Imaging of Brain Tumors
 
Radiological anatomy of brain
Radiological  anatomy of brainRadiological  anatomy of brain
Radiological anatomy of brain
 
Brain vascular anatomy with MRA and MRI correlation
Brain vascular anatomy with MRA and MRI correlationBrain vascular anatomy with MRA and MRI correlation
Brain vascular anatomy with MRA and MRI correlation
 
Third ventricle
Third ventricleThird ventricle
Third ventricle
 
anatomyofcerebellum-181202085620.pdf
anatomyofcerebellum-181202085620.pdfanatomyofcerebellum-181202085620.pdf
anatomyofcerebellum-181202085620.pdf
 
Diagnostic Imaging of Congenital Central Nervous System Diseases
Diagnostic Imaging of Congenital Central Nervous System DiseasesDiagnostic Imaging of Congenital Central Nervous System Diseases
Diagnostic Imaging of Congenital Central Nervous System Diseases
 
Fifteen (50) intracranial cystic lesion Dr Ahmed Esawy CT MRI main
Fifteen (50) intracranial cystic lesion Dr Ahmed Esawy CT MRI main Fifteen (50) intracranial cystic lesion Dr Ahmed Esawy CT MRI main
Fifteen (50) intracranial cystic lesion Dr Ahmed Esawy CT MRI main
 
Radiological findings of congenital anomalies of the spine and spinal cord
Radiological findings of congenital anomalies of the spine and spinal cordRadiological findings of congenital anomalies of the spine and spinal cord
Radiological findings of congenital anomalies of the spine and spinal cord
 
CSF physiology
CSF physiologyCSF physiology
CSF physiology
 
Lirads new 2018
Lirads new 2018Lirads new 2018
Lirads new 2018
 
White fibers of cerebrum 1
White fibers of cerebrum 1White fibers of cerebrum 1
White fibers of cerebrum 1
 
Anatomy of cerebrum
Anatomy of cerebrumAnatomy of cerebrum
Anatomy of cerebrum
 
Imaging in holoprosencephaly and related disorders
Imaging in holoprosencephaly and related disordersImaging in holoprosencephaly and related disorders
Imaging in holoprosencephaly and related disorders
 

Similaire à Building SPFx Solutions using Docker

SPFx Team based Development using Docker
SPFx Team based Development using DockerSPFx Team based Development using Docker
SPFx Team based Development using Docker
Jenkins NS
 

Similaire à Building SPFx Solutions using Docker (20)

SPFx Team based Development using Docker
SPFx Team based Development using DockerSPFx Team based Development using Docker
SPFx Team based Development using Docker
 
Docker workshop
Docker workshopDocker workshop
Docker workshop
 
Docker Basics & Alfresco Content Services
Docker Basics & Alfresco Content ServicesDocker Basics & Alfresco Content Services
Docker Basics & Alfresco Content Services
 
Docker - introduction
Docker - introductionDocker - introduction
Docker - introduction
 
Continuous Delivery with Docker and Jenkins pipeline
Continuous Delivery with Docker and Jenkins pipelineContinuous Delivery with Docker and Jenkins pipeline
Continuous Delivery with Docker and Jenkins pipeline
 
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth RushgroveThe Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
 
Using docker to develop NAS applications
Using docker to develop NAS applicationsUsing docker to develop NAS applications
Using docker to develop NAS applications
 
Docker: A New Way to Turbocharging Your Apps Development
Docker: A New Way to Turbocharging Your Apps DevelopmentDocker: A New Way to Turbocharging Your Apps Development
Docker: A New Way to Turbocharging Your Apps Development
 
Continuous delivery with docker
Continuous delivery with dockerContinuous delivery with docker
Continuous delivery with docker
 
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
Docker Azure Friday OSS March 2017 - Developing and deploying Java & Linux on...
 
Containerizing Web Application with Docker
Containerizing Web Application with DockerContainerizing Web Application with Docker
Containerizing Web Application with Docker
 
Cloud expo-east-2015
Cloud expo-east-2015Cloud expo-east-2015
Cloud expo-east-2015
 
Creating Docker Extension for an Open Source Project
Creating Docker Extension for an Open Source ProjectCreating Docker Extension for an Open Source Project
Creating Docker Extension for an Open Source Project
 
Deployment Tactics
Deployment TacticsDeployment Tactics
Deployment Tactics
 
Docker 101 Checonf 2016
Docker 101 Checonf 2016Docker 101 Checonf 2016
Docker 101 Checonf 2016
 
classdockerimages.pdf
classdockerimages.pdfclassdockerimages.pdf
classdockerimages.pdf
 
Develop with docker 2014 aug
Develop with docker 2014 augDevelop with docker 2014 aug
Develop with docker 2014 aug
 
Docker for Web Developers: A Sneak Peek
Docker for Web Developers: A Sneak PeekDocker for Web Developers: A Sneak Peek
Docker for Web Developers: A Sneak Peek
 
From Docker to Production - ZendCon 2016
From Docker to Production - ZendCon 2016From Docker to Production - ZendCon 2016
From Docker to Production - ZendCon 2016
 
Faster and Easier Software Development using Docker Platform
Faster and Easier Software Development using Docker PlatformFaster and Easier Software Development using Docker Platform
Faster and Easier Software Development using Docker Platform
 

Plus de Jenkins NS

Plus de Jenkins NS (20)

All about Send proactive messages in Microsoft Teams BOT
All about Send proactive messages in Microsoft Teams BOTAll about Send proactive messages in Microsoft Teams BOT
All about Send proactive messages in Microsoft Teams BOT
 
Surfacing SPFx Solutions in SharePoint, MS Teams, and Outlook Add-in
Surfacing SPFx Solutions in SharePoint, MS Teams, and Outlook Add-inSurfacing SPFx Solutions in SharePoint, MS Teams, and Outlook Add-in
Surfacing SPFx Solutions in SharePoint, MS Teams, and Outlook Add-in
 
Global M365 Developer Bootcamp 2020 Hyderabad: KEYNOTE
Global M365 Developer Bootcamp 2020 Hyderabad: KEYNOTEGlobal M365 Developer Bootcamp 2020 Hyderabad: KEYNOTE
Global M365 Developer Bootcamp 2020 Hyderabad: KEYNOTE
 
Global M365 Developer Bootcamp 2020 Hyderabad: WELCOME NOTE
Global M365 Developer Bootcamp 2020 Hyderabad: WELCOME NOTEGlobal M365 Developer Bootcamp 2020 Hyderabad: WELCOME NOTE
Global M365 Developer Bootcamp 2020 Hyderabad: WELCOME NOTE
 
SPFx Outlook add-in with Azure Cognitive services to detect the sentiment bef...
SPFx Outlook add-in with Azure Cognitive services to detect the sentiment bef...SPFx Outlook add-in with Azure Cognitive services to detect the sentiment bef...
SPFx Outlook add-in with Azure Cognitive services to detect the sentiment bef...
 
Extend the unextended in microsoft teams
Extend the unextended in microsoft teamsExtend the unextended in microsoft teams
Extend the unextended in microsoft teams
 
Power Automate integration with SPFX webpart
Power Automate integration with SPFX webpartPower Automate integration with SPFX webpart
Power Automate integration with SPFX webpart
 
Task-oriented interactions in Microsoft Teams with messaging extensions
Task-oriented interactions in Microsoft Teams with messaging extensionsTask-oriented interactions in Microsoft Teams with messaging extensions
Task-oriented interactions in Microsoft Teams with messaging extensions
 
Microsoft power platform
Microsoft power platformMicrosoft power platform
Microsoft power platform
 
Introduction to microsoft teams app templates
Introduction to microsoft teams app templatesIntroduction to microsoft teams app templates
Introduction to microsoft teams app templates
 
Build an app from scratch using teams app studio for ms teams
Build an app from scratch using teams app studio for ms teamsBuild an app from scratch using teams app studio for ms teams
Build an app from scratch using teams app studio for ms teams
 
Empowering citizen developers using power apps
Empowering citizen developers using power appsEmpowering citizen developers using power apps
Empowering citizen developers using power apps
 
Ms teams webinar-getting started with microsoft teams development
Ms teams webinar-getting started with microsoft teams developmentMs teams webinar-getting started with microsoft teams development
Ms teams webinar-getting started with microsoft teams development
 
M365 virtual marathon build your first power virtual agents bot
M365 virtual marathon   build your first power virtual agents botM365 virtual marathon   build your first power virtual agents bot
M365 virtual marathon build your first power virtual agents bot
 
harePoint Framework Webinar Series: Consume Graph APIs in SharePoint Framework
harePoint Framework Webinar Series: Consume Graph APIs in SharePoint FrameworkharePoint Framework Webinar Series: Consume Graph APIs in SharePoint Framework
harePoint Framework Webinar Series: Consume Graph APIs in SharePoint Framework
 
SPFx Webinar Loading SharePoint data in a SPFx Webpart
SPFx Webinar Loading SharePoint data in a SPFx WebpartSPFx Webinar Loading SharePoint data in a SPFx Webpart
SPFx Webinar Loading SharePoint data in a SPFx Webpart
 
SPSChennai2020
SPSChennai2020SPSChennai2020
SPSChennai2020
 
Trivandrumtechcon20
Trivandrumtechcon20Trivandrumtechcon20
Trivandrumtechcon20
 
Governance and administration for teams app development
Governance and administration for teams app developmentGovernance and administration for teams app development
Governance and administration for teams app development
 
Getting started with spfx
Getting started with spfxGetting started with spfx
Getting started with spfx
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

Building SPFx Solutions using Docker

Notes de l'éditeur

  1. Example : We developed and deployed a solution to production in a version 1.3.1, we need not have to upgrade to the latest version of the SPFx to do a single change. It is not worth the effort and the hours, since every new version upgrade will introduce new errors or impact, we need to proceed regression testing and also require to fix the errors and impacts.