SlideShare una empresa de Scribd logo
1 de 19
How to run ASP.NET on
virtual server for $5/mo
and why you should not do this
by Yuriy V. Silvestrov
@ysilvestrov
About us
Yuriy V. Silvestrov
15+ years record in IT, 10+ years devoted to managing
projects. Differrent occupations from Program Manager
to CTO and confounder of two startups. At the moment I
am working as a Senior Development Manager for
Oracle and also one of the co-developers of
Spillikin.
Facebook: fb.com/ysilvestrov
Please visit my website
http://yuriy.silvestrov.com
for more info or contact me at
yuriy@silvestrov.com.
@ysilvestrov
About lection Based on my own
experience
 Useful for startups
and pet projects
 Not the right way, not
the best way, but the
working one.
@ysilvestrov
@ysilvestrov
Time is counting
⌛ < 30
@ysilvestrov
How many of you
 Have tried ASP.NET Core?
 Have run ASP.NET on Linux?
 Have tried Heroku and/or Dokku?
 Are Dokker Experts?
 We’ll try to adapt
@ysilvestrov
@ysilvestrov
Content
 What’s this all about?
◦ The real task
◦ Why ASP.NET
◦ Where to host?
 ASP.NET Core
◦ Preparation
◦ Containers
◦ Remotely and locally
 Pros and Cons
 Q&A
@ysilvestrov, @valkovnet
@ysilvestrov
The real task
@ysilvestrov
Why to choose ASP.NET
@ysilvestrov
@ysilvestrov
Why not to buy cheap server or
host on Azure
 Azure
 VDS (Win)
 AppHarbor
 VDS (Linux)
@ysilvestrov
@ysilvestrov
Solution – Digital Ocean
@ysilvestrov
@ysilvestrov
ASP.NET Core: preparation
 Download latest VS 2015 and install
https://www.microsoft.com/net/core#windows
 Download latest ASP.NET Core and install
https://www.microsoft.com/net/core#windows
 Check if everything is working by running tutorial
https://docs.asp.net/en/latest/getting-
started.html
@ysilvestrov
@ysilvestrov
ASP.NET Core & container: locally
 Download and install Docker for Windows
https://www.docker.com/products/docker#/windows
 Download and install Kitematic right from Docker
menu
 Install VS tools for Docker
https://visualstudiogallery.msdn.microsoft.com/0f5b2
caa-ea00-41c8-b8a2-058c7da0b3e4
 Create Ubuntu host with Kitematic
 Run DockerTasks.ps1 as described in VS tools above
 In Kitematic you'll see new container. Open
WebPreview in browser and enjoi :)
@ysilvestrov
@ysilvestrov
ASP.NET Core & container:
remotely - registration
 Register on DigitalOcean. You can use my
referral link, if you'd like
https://m.do.co/c/61f8c0f9852c
 Create a droplet
◦ OneClick apps: Dokku
◦ Size: smallest ($5/mo)
◦ Choose region (I personally like Amsterdam)
◦ No additional options (especially IPv6 - there is a
bug with it)
◦ Enter the droplet name
◦ Add key (or create new one)
@ysilvestrov
ASP.NET Core & container:
remotely - setup
 Setup Domain
◦ On your DNS provider, add 2 DNS records
 your.domain A DropletIP
 *.your.domain A DropletIP
 open Dokku on http://your.domain
◦ Check the key
◦ Change hostname to your.domain
◦ Check "Use virtualhost naming"
◦ Click Finish setup
@ysilvestrov
ASP.NET Core & container:
remotely - tools
 Install tools
◦ Git for Windows
◦ PuTTy
◦ Add your keys to pageant (installed with
PuTTy)
◦ Open your.domain in PuTTy to cache the key
@ysilvestrov
ASP.NET Core & container:
remotely - deployment
 Push your app
◦ Open Git Bash shell
◦ cd /c/path/to/your/project/bin/Docker/Release
◦ copy Dockerfile on this level from [projectname] folder
◦ git init
◦ git add .
◦ git commit -m "First commit"
◦ git remote add dokku dokku@your.domain:your-app-
name
◦ git push dokku master
◦ If everything is OK, you should see "=====>
Application deployed: http:/ /your-app-
name.your.domain
◦ Open that URL and enjoi :)
@ysilvestrov
Why the heck the Spillikin API is
done using NodeJS?
 Limited DB support (apart from SQL
Server – PostgreSQL + SQLite)
 Too many changes in naming etc. (k =>
web => dotnet)
 Too many changes in interfaces etc.
@ysilvestrov
Questions?
???
@ysilvestrov
@ysilvestrov
Thank you!
yuriy@silvestrov.com

Más contenido relacionado

La actualidad más candente

Testing and updating WordPress - Advanced techniques for avoiding regressions
Testing and updating WordPress - Advanced techniques for avoiding regressionsTesting and updating WordPress - Advanced techniques for avoiding regressions
Testing and updating WordPress - Advanced techniques for avoiding regressionsOtto Kekäläinen
 
Technical SEO for WordPress - 2017 edition
Technical SEO for WordPress - 2017 editionTechnical SEO for WordPress - 2017 edition
Technical SEO for WordPress - 2017 editionOtto Kekäläinen
 
Open source Java office, day 15: files handling in the NetBeans Application F...
Open source Java office, day 15: files handling in the NetBeans Application F...Open source Java office, day 15: files handling in the NetBeans Application F...
Open source Java office, day 15: files handling in the NetBeans Application F...Anthony Goubard
 
Hello websocket(cn)
Hello websocket(cn)Hello websocket(cn)
Hello websocket(cn)g65537
 
The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...Otto Kekäläinen
 
That's crazy! how to build single page web apps
That's crazy! how to build single page web appsThat's crazy! how to build single page web apps
That's crazy! how to build single page web appsChris Love
 
Angular – Say Goodbye to Javascript Soup
Angular – Say Goodbye to Javascript SoupAngular – Say Goodbye to Javascript Soup
Angular – Say Goodbye to Javascript SoupGraeme Foster
 
How to create_a_simple_java_web_service_and_publish_it_on_netbeans_7
How to create_a_simple_java_web_service_and_publish_it_on_netbeans_7How to create_a_simple_java_web_service_and_publish_it_on_netbeans_7
How to create_a_simple_java_web_service_and_publish_it_on_netbeans_7X User
 
WordCamp Miami 2016 SiteLock Presentation
WordCamp Miami 2016 SiteLock PresentationWordCamp Miami 2016 SiteLock Presentation
WordCamp Miami 2016 SiteLock PresentationSiteLock
 

La actualidad más candente (11)

Testing and updating WordPress - Advanced techniques for avoiding regressions
Testing and updating WordPress - Advanced techniques for avoiding regressionsTesting and updating WordPress - Advanced techniques for avoiding regressions
Testing and updating WordPress - Advanced techniques for avoiding regressions
 
Technical SEO for WordPress - 2017 edition
Technical SEO for WordPress - 2017 editionTechnical SEO for WordPress - 2017 edition
Technical SEO for WordPress - 2017 edition
 
Open source Java office, day 15: files handling in the NetBeans Application F...
Open source Java office, day 15: files handling in the NetBeans Application F...Open source Java office, day 15: files handling in the NetBeans Application F...
Open source Java office, day 15: files handling in the NetBeans Application F...
 
Hello websocket(cn)
Hello websocket(cn)Hello websocket(cn)
Hello websocket(cn)
 
Wt
WtWt
Wt
 
The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...The 5 most common reasons for a slow WordPress site and how to fix them – ext...
The 5 most common reasons for a slow WordPress site and how to fix them – ext...
 
That's crazy! how to build single page web apps
That's crazy! how to build single page web appsThat's crazy! how to build single page web apps
That's crazy! how to build single page web apps
 
Angular – Say Goodbye to Javascript Soup
Angular – Say Goodbye to Javascript SoupAngular – Say Goodbye to Javascript Soup
Angular – Say Goodbye to Javascript Soup
 
How to create_a_simple_java_web_service_and_publish_it_on_netbeans_7
How to create_a_simple_java_web_service_and_publish_it_on_netbeans_7How to create_a_simple_java_web_service_and_publish_it_on_netbeans_7
How to create_a_simple_java_web_service_and_publish_it_on_netbeans_7
 
WordCamp Miami 2016 SiteLock Presentation
WordCamp Miami 2016 SiteLock PresentationWordCamp Miami 2016 SiteLock Presentation
WordCamp Miami 2016 SiteLock Presentation
 
Coldfusion with Keith Diehl
Coldfusion with Keith DiehlColdfusion with Keith Diehl
Coldfusion with Keith Diehl
 

Destacado (20)

Teatro 2009
Teatro 2009Teatro 2009
Teatro 2009
 
FNPW and Preserving Planet Earth
FNPW and Preserving Planet EarthFNPW and Preserving Planet Earth
FNPW and Preserving Planet Earth
 
Developing the startup (in Russian)
Developing the startup (in Russian)Developing the startup (in Russian)
Developing the startup (in Russian)
 
Chapter 4 colonial government
Chapter 4 colonial governmentChapter 4 colonial government
Chapter 4 colonial government
 
Ictmarch2009
Ictmarch2009Ictmarch2009
Ictmarch2009
 
PAC business profile
PAC business profilePAC business profile
PAC business profile
 
First Nations Commodity Taxation
First Nations Commodity TaxationFirst Nations Commodity Taxation
First Nations Commodity Taxation
 
How stupid can we get
How stupid can we getHow stupid can we get
How stupid can we get
 
abrag
abragabrag
abrag
 
Miyagawa
MiyagawaMiyagawa
Miyagawa
 
Smokers
SmokersSmokers
Smokers
 
Bt pusher bluetooth marketing software system user guide
Bt pusher bluetooth marketing software system user guideBt pusher bluetooth marketing software system user guide
Bt pusher bluetooth marketing software system user guide
 
Introduction Lis 26
Introduction Lis 26Introduction Lis 26
Introduction Lis 26
 
5.Bt Grup As
5.Bt Grup As5.Bt Grup As
5.Bt Grup As
 
Etxebizitzak Villabonan
Etxebizitzak VillabonanEtxebizitzak Villabonan
Etxebizitzak Villabonan
 
Shannons Ink And Pencil
Shannons Ink And PencilShannons Ink And Pencil
Shannons Ink And Pencil
 
0912 Mc Kew (2)
0912 Mc Kew (2)0912 Mc Kew (2)
0912 Mc Kew (2)
 
Alum.Es
Alum.EsAlum.Es
Alum.Es
 
Page Rank
Page RankPage Rank
Page Rank
 
Airplane Susy &Masa
Airplane Susy &MasaAirplane Susy &Masa
Airplane Susy &Masa
 

Similar a How to run asp.net on virtual server for $5 per mo

Quick prototyping apps using JS - Ciklum, Vinnitsa
Quick prototyping apps using JS - Ciklum, VinnitsaQuick prototyping apps using JS - Ciklum, Vinnitsa
Quick prototyping apps using JS - Ciklum, VinnitsaYuriy Silvestrov
 
Prototyping app using JS and HTML5 (Ciklum Kharkiv)
Prototyping app using JS and HTML5 (Ciklum Kharkiv)Prototyping app using JS and HTML5 (Ciklum Kharkiv)
Prototyping app using JS and HTML5 (Ciklum Kharkiv)Yuriy Silvestrov
 
Fast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
Fast prototyping apps using AngularJS, RequireJS and Twitter BootstrapFast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
Fast prototyping apps using AngularJS, RequireJS and Twitter BootstrapYuriy Silvestrov
 
The State of Front-end At CrowdTwist
The State of Front-end At CrowdTwistThe State of Front-end At CrowdTwist
The State of Front-end At CrowdTwistMark Fayngersh
 
Pain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr SugakPain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr SugakSigma Software
 
Do WordPress developers write code?
Do WordPress developers write code?Do WordPress developers write code?
Do WordPress developers write code?Stanko Metodiev
 
Cf objective2014 software-craftsmanship
Cf objective2014   software-craftsmanshipCf objective2014   software-craftsmanship
Cf objective2014 software-craftsmanshipKev McCabe
 
Cf objective2014 software-craftsmanship
Cf objective2014 software-craftsmanshipCf objective2014 software-craftsmanship
Cf objective2014 software-craftsmanshipColdFusionConference
 
Build and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 MinsBuild and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 MinsJeff Hull
 
20210916 mule soft_meetup_nz_online_uploadedversion
20210916 mule soft_meetup_nz_online_uploadedversion20210916 mule soft_meetup_nz_online_uploadedversion
20210916 mule soft_meetup_nz_online_uploadedversionMizuhoHoshino
 
I started a VC fund - here is what happened
I started a VC fund - here is what happenedI started a VC fund - here is what happened
I started a VC fund - here is what happenedAndreas Klinger
 
MBA632 Lecture, Morehead State University
MBA632 Lecture, Morehead State UniversityMBA632 Lecture, Morehead State University
MBA632 Lecture, Morehead State UniversityBrad Ward
 
JS FAST Prototyping with AngularJS & RequireJS
JS FAST Prototyping with AngularJS & RequireJSJS FAST Prototyping with AngularJS & RequireJS
JS FAST Prototyping with AngularJS & RequireJSYuriy Silvestrov
 
Girl Scouts Website Designer Badge Seminar - Workbook
Girl Scouts Website Designer Badge Seminar - WorkbookGirl Scouts Website Designer Badge Seminar - Workbook
Girl Scouts Website Designer Badge Seminar - WorkbookLauren Hayward Schaefer
 
Microsoft Webday 2008 - Silverlight Experiences
Microsoft Webday 2008 - Silverlight ExperiencesMicrosoft Webday 2008 - Silverlight Experiences
Microsoft Webday 2008 - Silverlight ExperiencesNicklas Andersson
 
Futuropolis 2058 Singapore - OpenSocial, a standard for the social web
Futuropolis 2058 Singapore - OpenSocial, a standard for the social webFuturopolis 2058 Singapore - OpenSocial, a standard for the social web
Futuropolis 2058 Singapore - OpenSocial, a standard for the social webPatrick Chanezon
 
Building Your Startup with Technology
Building Your Startup with TechnologyBuilding Your Startup with Technology
Building Your Startup with TechnologyAndri Yadi
 

Similar a How to run asp.net on virtual server for $5 per mo (20)

Quick prototyping apps using JS - Ciklum, Vinnitsa
Quick prototyping apps using JS - Ciklum, VinnitsaQuick prototyping apps using JS - Ciklum, Vinnitsa
Quick prototyping apps using JS - Ciklum, Vinnitsa
 
Prototyping app using JS and HTML5 (Ciklum Kharkiv)
Prototyping app using JS and HTML5 (Ciklum Kharkiv)Prototyping app using JS and HTML5 (Ciklum Kharkiv)
Prototyping app using JS and HTML5 (Ciklum Kharkiv)
 
Fast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
Fast prototyping apps using AngularJS, RequireJS and Twitter BootstrapFast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
Fast prototyping apps using AngularJS, RequireJS and Twitter Bootstrap
 
The State of Front-end At CrowdTwist
The State of Front-end At CrowdTwistThe State of Front-end At CrowdTwist
The State of Front-end At CrowdTwist
 
Pain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr SugakPain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr Sugak
 
Do WordPress developers write code?
Do WordPress developers write code?Do WordPress developers write code?
Do WordPress developers write code?
 
Cf objective2014 software-craftsmanship
Cf objective2014   software-craftsmanshipCf objective2014   software-craftsmanship
Cf objective2014 software-craftsmanship
 
Cf objective2014 software-craftsmanship
Cf objective2014 software-craftsmanshipCf objective2014 software-craftsmanship
Cf objective2014 software-craftsmanship
 
Build and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 MinsBuild and Deploy a Python Web App to Amazon in 30 Mins
Build and Deploy a Python Web App to Amazon in 30 Mins
 
20210916 mule soft_meetup_nz_online_uploadedversion
20210916 mule soft_meetup_nz_online_uploadedversion20210916 mule soft_meetup_nz_online_uploadedversion
20210916 mule soft_meetup_nz_online_uploadedversion
 
Me&g@home
Me&g@home Me&g@home
Me&g@home
 
I started a VC fund - here is what happened
I started a VC fund - here is what happenedI started a VC fund - here is what happened
I started a VC fund - here is what happened
 
MBA632 Lecture, Morehead State University
MBA632 Lecture, Morehead State UniversityMBA632 Lecture, Morehead State University
MBA632 Lecture, Morehead State University
 
JS FAST Prototyping with AngularJS & RequireJS
JS FAST Prototyping with AngularJS & RequireJSJS FAST Prototyping with AngularJS & RequireJS
JS FAST Prototyping with AngularJS & RequireJS
 
Girl Scouts Website Designer Badge Seminar - Workbook
Girl Scouts Website Designer Badge Seminar - WorkbookGirl Scouts Website Designer Badge Seminar - Workbook
Girl Scouts Website Designer Badge Seminar - Workbook
 
Microsoft Webday 2008 - Silverlight Experiences
Microsoft Webday 2008 - Silverlight ExperiencesMicrosoft Webday 2008 - Silverlight Experiences
Microsoft Webday 2008 - Silverlight Experiences
 
Futuropolis 2058 Singapore - OpenSocial, a standard for the social web
Futuropolis 2058 Singapore - OpenSocial, a standard for the social webFuturopolis 2058 Singapore - OpenSocial, a standard for the social web
Futuropolis 2058 Singapore - OpenSocial, a standard for the social web
 
Building Your Startup with Technology
Building Your Startup with TechnologyBuilding Your Startup with Technology
Building Your Startup with Technology
 
Den bavp
Den bavpDen bavp
Den bavp
 
Bavp sd
Bavp sdBavp sd
Bavp sd
 

Más de Yuriy Silvestrov

Startups intro to agile (по-русски)
Startups intro to agile (по-русски)Startups intro to agile (по-русски)
Startups intro to agile (по-русски)Yuriy Silvestrov
 
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russianStartup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russianYuriy Silvestrov
 
Agile antipatterns - AgileBC
Agile antipatterns - AgileBCAgile antipatterns - AgileBC
Agile antipatterns - AgileBCYuriy Silvestrov
 
Agile antipatterns (Odessa, Vinnitsa)
Agile antipatterns (Odessa, Vinnitsa)Agile antipatterns (Odessa, Vinnitsa)
Agile antipatterns (Odessa, Vinnitsa)Yuriy Silvestrov
 

Más de Yuriy Silvestrov (6)

Startups intro to agile (по-русски)
Startups intro to agile (по-русски)Startups intro to agile (по-русски)
Startups intro to agile (по-русски)
 
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russianStartup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
Startup agile (Ciklum Agile Saturday - Dnipropetrovsk) - in russian
 
Developing the ideas
Developing the ideasDeveloping the ideas
Developing the ideas
 
Agile antipatterns - AgileBC
Agile antipatterns - AgileBCAgile antipatterns - AgileBC
Agile antipatterns - AgileBC
 
Agile antipatterns (Odessa, Vinnitsa)
Agile antipatterns (Odessa, Vinnitsa)Agile antipatterns (Odessa, Vinnitsa)
Agile antipatterns (Odessa, Vinnitsa)
 
Catch agile
Catch agileCatch agile
Catch agile
 

Último

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 

Último (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 

How to run asp.net on virtual server for $5 per mo

  • 1. How to run ASP.NET on virtual server for $5/mo and why you should not do this by Yuriy V. Silvestrov @ysilvestrov
  • 2. About us Yuriy V. Silvestrov 15+ years record in IT, 10+ years devoted to managing projects. Differrent occupations from Program Manager to CTO and confounder of two startups. At the moment I am working as a Senior Development Manager for Oracle and also one of the co-developers of Spillikin. Facebook: fb.com/ysilvestrov Please visit my website http://yuriy.silvestrov.com for more info or contact me at yuriy@silvestrov.com. @ysilvestrov
  • 3. About lection Based on my own experience  Useful for startups and pet projects  Not the right way, not the best way, but the working one. @ysilvestrov
  • 5. @ysilvestrov How many of you  Have tried ASP.NET Core?  Have run ASP.NET on Linux?  Have tried Heroku and/or Dokku?  Are Dokker Experts?  We’ll try to adapt @ysilvestrov
  • 6. @ysilvestrov Content  What’s this all about? ◦ The real task ◦ Why ASP.NET ◦ Where to host?  ASP.NET Core ◦ Preparation ◦ Containers ◦ Remotely and locally  Pros and Cons  Q&A @ysilvestrov, @valkovnet
  • 8. @ysilvestrov Why to choose ASP.NET @ysilvestrov
  • 9. @ysilvestrov Why not to buy cheap server or host on Azure  Azure  VDS (Win)  AppHarbor  VDS (Linux) @ysilvestrov
  • 10. @ysilvestrov Solution – Digital Ocean @ysilvestrov
  • 11. @ysilvestrov ASP.NET Core: preparation  Download latest VS 2015 and install https://www.microsoft.com/net/core#windows  Download latest ASP.NET Core and install https://www.microsoft.com/net/core#windows  Check if everything is working by running tutorial https://docs.asp.net/en/latest/getting- started.html @ysilvestrov
  • 12. @ysilvestrov ASP.NET Core & container: locally  Download and install Docker for Windows https://www.docker.com/products/docker#/windows  Download and install Kitematic right from Docker menu  Install VS tools for Docker https://visualstudiogallery.msdn.microsoft.com/0f5b2 caa-ea00-41c8-b8a2-058c7da0b3e4  Create Ubuntu host with Kitematic  Run DockerTasks.ps1 as described in VS tools above  In Kitematic you'll see new container. Open WebPreview in browser and enjoi :) @ysilvestrov
  • 13. @ysilvestrov ASP.NET Core & container: remotely - registration  Register on DigitalOcean. You can use my referral link, if you'd like https://m.do.co/c/61f8c0f9852c  Create a droplet ◦ OneClick apps: Dokku ◦ Size: smallest ($5/mo) ◦ Choose region (I personally like Amsterdam) ◦ No additional options (especially IPv6 - there is a bug with it) ◦ Enter the droplet name ◦ Add key (or create new one)
  • 14. @ysilvestrov ASP.NET Core & container: remotely - setup  Setup Domain ◦ On your DNS provider, add 2 DNS records  your.domain A DropletIP  *.your.domain A DropletIP  open Dokku on http://your.domain ◦ Check the key ◦ Change hostname to your.domain ◦ Check "Use virtualhost naming" ◦ Click Finish setup
  • 15. @ysilvestrov ASP.NET Core & container: remotely - tools  Install tools ◦ Git for Windows ◦ PuTTy ◦ Add your keys to pageant (installed with PuTTy) ◦ Open your.domain in PuTTy to cache the key
  • 16. @ysilvestrov ASP.NET Core & container: remotely - deployment  Push your app ◦ Open Git Bash shell ◦ cd /c/path/to/your/project/bin/Docker/Release ◦ copy Dockerfile on this level from [projectname] folder ◦ git init ◦ git add . ◦ git commit -m "First commit" ◦ git remote add dokku dokku@your.domain:your-app- name ◦ git push dokku master ◦ If everything is OK, you should see "=====> Application deployed: http:/ /your-app- name.your.domain ◦ Open that URL and enjoi :)
  • 17. @ysilvestrov Why the heck the Spillikin API is done using NodeJS?  Limited DB support (apart from SQL Server – PostgreSQL + SQLite)  Too many changes in naming etc. (k => web => dotnet)  Too many changes in interfaces etc.