SlideShare a Scribd company logo
1 of 44
Download to read offline
Using Capifony for
Symfony apps deployment
Žilvinas Kuusas
VilniusPHP 0x1B, 2015-02-05 / http://vilniusphp.lt
Who am I?
Žilvinas Kuusas
lead developer
Estina / iSign.io
t: @kuusas
e: zilvinas@kuusas.lt
How do people deploy?
Code
● FTP
● vim
● rsync
● git pull
● ...
Database
● Manually manage DB
fields
● phpMyAdmin
● mysql < changes.sql
● ...
Symfony - heavy
Post-deployment tasks:
● cache:clear
● cache:warmup
● assets:install
● assetic:dump
● doctrine:migrations:migrate
● restart some services
● ...
What if …
… you executed a wrong
command?
Don’t Repeat Yourself
AUTOMATE!
Goals for solid deployment
● One-click deployment
● Deploy in one transaction
● Rollback
● Automated tasks
● Notifications
● 0 downtime
● Confidence
Capistrano
Capifony
What Capistrano is?
● Capistrano is an open source tool for running scripts on
multiple servers
● Primary use - application deployment
● Capifony - set of instructions called “recipes” for
Symfony applications deployment
● Built to make your job a lot easier
Why Capifony?
● Fully supports Symfony features
● Actively maintained since 2009
● 6 active contributors
● >100 total
● last commit 16 days ago
What do we need?
● Symfony2 application
● Capifony
● SSH access to server (ssh-key recommended)
How it works?
Setup
$ sudo gem install capifony
$ cd /path/to/your/project
$ capifony .
$ capifony .
$ vi app/config/deploy.rb
$ vi app/config/deploy.rb
$ cap deploy
$ cap deploy
Main deployment commands
$ cap deploy
…
$ cap deploy:migrations
...
$ cap deploy:rollback
Deployment strategies
deployment > scm > production
Deployment strategies
scm > deployment > production
Behind scenes
What else Capifony can do?
● Execute Symfony commands on server
● Execute shell commands on server
● Dump remote database and download
● Tail logs
● Turn on/off maintenance page
$ cap -vT # Lists all tasks available
$ cap deploy:check
$ cap database:copy:to_local
$ cap deploy:cold
$ cap deploy:pending
$ cap deploy:web:disable
$ cap deploy:web:enable
$ cap symfony:logs:tail
$ cap symfony
...
Database migrations
Deploy database schema updates in...
● SAFE
● EASY
● STANDARDIZED
way…
DoctrineMigrationsBundle
$ app/console doctrine:migrations:diff
Deploying with migrations:
$ cap deploy:migrations
Rolling-back migrations:
$ cap symfony -S task_arguments="doctrine:
migrations:migrate 20150205170707 --no-interaction"
$ cap deploy:migrations
OPcache
● Create temp file accessible via www
● Make curl request
● Remove file
Capistrano recipe for that:
https://github.com/occitech/capistrano-recipes/blob/master/Opcache-Recipe.rb
Keeping sessions
Multistage extension
Enables deployment to multiple servers
$ cap STAGE_NAME deploy
Multistage extension:
https://github.com/capistrano/capistrano/wiki/2.x-Multistage-Extension
Deploying release package
● CI server builds release package (zip)
● Capifony deploys
Capistrano deploy strategy called “archive”:
https://github.com/sorccu/capistrano-deploy-strategy-archive
Symfony related configuration
Extending Capistrano
It’s Ruby!
Override Capistrano recipes
Listen to events
Debugging
$ cap deploy -d
cap deploy:migrations -s branch=master
cap deploy:migrations -S my_var=value
Arguments in CLI
Other deployment tools
● Fabric (Python)
● Idephix
● Magellanes
● Deployer
● Laravel / Envoy
● Rocketeer
● Ansible + Tower
Final thoughts
Don’t use FTP
Final thoughts
AUTOMATE
Questions?
AČIŪ
Credits for image authors. “what if…” gif taken from devopsreactions.tumblr.com, deployment strategies - from capifony.org.
Couldn’t find the real authors of lizzard and kitty - so if its your’s - THANK YOU.

More Related Content

What's hot

Vagrant for Virtualized Development
Vagrant for Virtualized DevelopmentVagrant for Virtualized Development
Vagrant for Virtualized DevelopmentAdam Culp
 
Docker and fig for dev
Docker and fig for devDocker and fig for dev
Docker and fig for devpranas_algoteq
 
Sonata Block Bundle - sfPot March 2014
Sonata Block Bundle - sfPot March 2014Sonata Block Bundle - sfPot March 2014
Sonata Block Bundle - sfPot March 2014th0masr
 
Ruby projects of interest for DevOps
Ruby projects of interest for DevOpsRuby projects of interest for DevOps
Ruby projects of interest for DevOpsRicardo Sanchez
 
How to keep Drupal relevant in the Git-based and API-driven CMS era Florida
How to keep Drupal relevant in the Git-based and API-driven CMS era FloridaHow to keep Drupal relevant in the Git-based and API-driven CMS era Florida
How to keep Drupal relevant in the Git-based and API-driven CMS era FloridaJesus Manuel Olivas
 
[Workshop] "Vuetify in practice", Alexander Stepanov
[Workshop] "Vuetify in practice", Alexander Stepanov[Workshop] "Vuetify in practice", Alexander Stepanov
[Workshop] "Vuetify in practice", Alexander StepanovFwdays
 
perlcc made easy or, how to make a CGI Moose app
perlcc made easy or, how to make a CGI Moose appperlcc made easy or, how to make a CGI Moose app
perlcc made easy or, how to make a CGI Moose appcPanel
 
Java Stammtisch Würzburg - CONAIR
Java Stammtisch Würzburg - CONAIRJava Stammtisch Würzburg - CONAIR
Java Stammtisch Würzburg - CONAIRMatthias Reining
 
Vagrant hands on workshop for beginners
Vagrant hands on workshop for beginnersVagrant hands on workshop for beginners
Vagrant hands on workshop for beginnersLiora Milbaum
 
An introduction to the Symfony CMF - creating a CMS on top of Symfony
An introduction to the Symfony CMF - creating a CMS on top of Symfony An introduction to the Symfony CMF - creating a CMS on top of Symfony
An introduction to the Symfony CMF - creating a CMS on top of Symfony Roel Sint
 
Node.js 201: building real-world applications in pure JavaScript
Node.js 201: building real-world applications in pure JavaScriptNode.js 201: building real-world applications in pure JavaScript
Node.js 201: building real-world applications in pure JavaScriptTom Boutell
 
Vagrant 101 Workshop
Vagrant 101 WorkshopVagrant 101 Workshop
Vagrant 101 WorkshopLiora Milbaum
 
NodeJS: n00b no more
NodeJS: n00b no moreNodeJS: n00b no more
NodeJS: n00b no moreBen Peachey
 
Ondřej Procházka - Deployment podle Devel.cz
Ondřej Procházka - Deployment podle Devel.czOndřej Procházka - Deployment podle Devel.cz
Ondřej Procházka - Deployment podle Devel.czDevelcz
 
Virtualization for Developers
Virtualization for DevelopersVirtualization for Developers
Virtualization for DevelopersJohn Coggeshall
 
JHipster Conf 2018 : Connect your JHipster apps to the world of APIs with Ope...
JHipster Conf 2018 : Connect your JHipster apps to the world of APIs with Ope...JHipster Conf 2018 : Connect your JHipster apps to the world of APIs with Ope...
JHipster Conf 2018 : Connect your JHipster apps to the world of APIs with Ope...chbornet
 

What's hot (20)

Vagrant for Virtualized Development
Vagrant for Virtualized DevelopmentVagrant for Virtualized Development
Vagrant for Virtualized Development
 
Docker and fig for dev
Docker and fig for devDocker and fig for dev
Docker and fig for dev
 
Sonata Block Bundle - sfPot March 2014
Sonata Block Bundle - sfPot March 2014Sonata Block Bundle - sfPot March 2014
Sonata Block Bundle - sfPot March 2014
 
Ruby projects of interest for DevOps
Ruby projects of interest for DevOpsRuby projects of interest for DevOps
Ruby projects of interest for DevOps
 
Vmth project
Vmth projectVmth project
Vmth project
 
How to keep Drupal relevant in the Git-based and API-driven CMS era Florida
How to keep Drupal relevant in the Git-based and API-driven CMS era FloridaHow to keep Drupal relevant in the Git-based and API-driven CMS era Florida
How to keep Drupal relevant in the Git-based and API-driven CMS era Florida
 
[Workshop] "Vuetify in practice", Alexander Stepanov
[Workshop] "Vuetify in practice", Alexander Stepanov[Workshop] "Vuetify in practice", Alexander Stepanov
[Workshop] "Vuetify in practice", Alexander Stepanov
 
perlcc made easy or, how to make a CGI Moose app
perlcc made easy or, how to make a CGI Moose appperlcc made easy or, how to make a CGI Moose app
perlcc made easy or, how to make a CGI Moose app
 
Ansible & Vagrant
Ansible & VagrantAnsible & Vagrant
Ansible & Vagrant
 
Java Stammtisch Würzburg - CONAIR
Java Stammtisch Würzburg - CONAIRJava Stammtisch Würzburg - CONAIR
Java Stammtisch Würzburg - CONAIR
 
Vagrant hands on workshop for beginners
Vagrant hands on workshop for beginnersVagrant hands on workshop for beginners
Vagrant hands on workshop for beginners
 
An introduction to the Symfony CMF - creating a CMS on top of Symfony
An introduction to the Symfony CMF - creating a CMS on top of Symfony An introduction to the Symfony CMF - creating a CMS on top of Symfony
An introduction to the Symfony CMF - creating a CMS on top of Symfony
 
Node.js 201: building real-world applications in pure JavaScript
Node.js 201: building real-world applications in pure JavaScriptNode.js 201: building real-world applications in pure JavaScript
Node.js 201: building real-world applications in pure JavaScript
 
Vagrant 101 Workshop
Vagrant 101 WorkshopVagrant 101 Workshop
Vagrant 101 Workshop
 
NodeJS: n00b no more
NodeJS: n00b no moreNodeJS: n00b no more
NodeJS: n00b no more
 
Using vagrant
Using vagrantUsing vagrant
Using vagrant
 
Ondřej Procházka - Deployment podle Devel.cz
Ondřej Procházka - Deployment podle Devel.czOndřej Procházka - Deployment podle Devel.cz
Ondřej Procházka - Deployment podle Devel.cz
 
Virtualization for Developers
Virtualization for DevelopersVirtualization for Developers
Virtualization for Developers
 
JHipster Conf 2018 : Connect your JHipster apps to the world of APIs with Ope...
JHipster Conf 2018 : Connect your JHipster apps to the world of APIs with Ope...JHipster Conf 2018 : Connect your JHipster apps to the world of APIs with Ope...
JHipster Conf 2018 : Connect your JHipster apps to the world of APIs with Ope...
 
Vagrant
VagrantVagrant
Vagrant
 

Viewers also liked

Makalah biologi
Makalah biologiMakalah biologi
Makalah biologimelanisha
 
Informal invitation
Informal invitationInformal invitation
Informal invitationmelanisha
 
طريقنا الى القلوب!
طريقنا الى القلوب!طريقنا الى القلوب!
طريقنا الى القلوب!Eslam Ashraf
 
селективная обработка пласта пакер
селективная обработка пласта пакерселективная обработка пласта пакер
селективная обработка пласта пакерgeoplast2007ru
 
New zealand Tourism
New zealand TourismNew zealand Tourism
New zealand TourismShobha Verma
 
My perfect vacation
My perfect vacationMy perfect vacation
My perfect vacationAndy As
 
Autonomic Application Management with Qubell (and Docker)
Autonomic Application Management with Qubell (and Docker)Autonomic Application Management with Qubell (and Docker)
Autonomic Application Management with Qubell (and Docker)Victoria Livschitz
 
Revamping the math classroom
Revamping the math classroomRevamping the math classroom
Revamping the math classroomcamille541
 
الأغراء الحقيقى
الأغراء الحقيقىالأغراء الحقيقى
الأغراء الحقيقىEslam Ashraf
 
Лабораторна робота LR4-5_4-5.1_kozachenko
Лабораторна робота LR4-5_4-5.1_kozachenkoЛабораторна робота LR4-5_4-5.1_kozachenko
Лабораторна робота LR4-5_4-5.1_kozachenkokozachenko2019
 
Autonomic Application Delivery with Tonomi
Autonomic Application Delivery with TonomiAutonomic Application Delivery with Tonomi
Autonomic Application Delivery with TonomiVictoria Livschitz
 
Questionnaire results
Questionnaire resultsQuestionnaire results
Questionnaire resultskatieyay
 
технология селективной изоляции водопритока
технология селективной изоляции водопритокатехнология селективной изоляции водопритока
технология селективной изоляции водопритокаgeoplast2007ru
 
طريقنا الى القلوب!
طريقنا الى القلوب!طريقنا الى القلوب!
طريقنا الى القلوب!Eslam Ashraf
 
Aleksander Królikowski
Aleksander KrólikowskiAleksander Królikowski
Aleksander KrólikowskiDysk
 
High availability is not a luxury webcast
High availability is not a luxury webcastHigh availability is not a luxury webcast
High availability is not a luxury webcastGina Tragos
 
طريقنا الى القلوب!
طريقنا الى القلوب!طريقنا الى القلوب!
طريقنا الى القلوب!Eslam Ashraf
 

Viewers also liked (20)

Makalah biologi
Makalah biologiMakalah biologi
Makalah biologi
 
Informal invitation
Informal invitationInformal invitation
Informal invitation
 
طريقنا الى القلوب!
طريقنا الى القلوب!طريقنا الى القلوب!
طريقنا الى القلوب!
 
селективная обработка пласта пакер
селективная обработка пласта пакерселективная обработка пласта пакер
селективная обработка пласта пакер
 
INTERNET PROTOCOL
INTERNET PROTOCOLINTERNET PROTOCOL
INTERNET PROTOCOL
 
New zealand Tourism
New zealand TourismNew zealand Tourism
New zealand Tourism
 
My perfect vacation
My perfect vacationMy perfect vacation
My perfect vacation
 
非リア充
非リア充非リア充
非リア充
 
Autonomic Application Management with Qubell (and Docker)
Autonomic Application Management with Qubell (and Docker)Autonomic Application Management with Qubell (and Docker)
Autonomic Application Management with Qubell (and Docker)
 
Revamping the math classroom
Revamping the math classroomRevamping the math classroom
Revamping the math classroom
 
الأغراء الحقيقى
الأغراء الحقيقىالأغراء الحقيقى
الأغراء الحقيقى
 
Лабораторна робота LR4-5_4-5.1_kozachenko
Лабораторна робота LR4-5_4-5.1_kozachenkoЛабораторна робота LR4-5_4-5.1_kozachenko
Лабораторна робота LR4-5_4-5.1_kozachenko
 
820036301
820036301820036301
820036301
 
Autonomic Application Delivery with Tonomi
Autonomic Application Delivery with TonomiAutonomic Application Delivery with Tonomi
Autonomic Application Delivery with Tonomi
 
Questionnaire results
Questionnaire resultsQuestionnaire results
Questionnaire results
 
технология селективной изоляции водопритока
технология селективной изоляции водопритокатехнология селективной изоляции водопритока
технология селективной изоляции водопритока
 
طريقنا الى القلوب!
طريقنا الى القلوب!طريقنا الى القلوب!
طريقنا الى القلوب!
 
Aleksander Królikowski
Aleksander KrólikowskiAleksander Królikowski
Aleksander Królikowski
 
High availability is not a luxury webcast
High availability is not a luxury webcastHigh availability is not a luxury webcast
High availability is not a luxury webcast
 
طريقنا الى القلوب!
طريقنا الى القلوب!طريقنا الى القلوب!
طريقنا الى القلوب!
 

Similar to Using Capifony for Symfony apps deployment.

Using Capifony for Symfony apps deployment (updated)
Using Capifony for Symfony apps deployment (updated)Using Capifony for Symfony apps deployment (updated)
Using Capifony for Symfony apps deployment (updated)Žilvinas Kuusas
 
Retrofitting Continuous Delivery
Retrofitting Continuous Delivery Retrofitting Continuous Delivery
Retrofitting Continuous Delivery Alan Norton
 
Capistrano deploy Magento project in an efficient way
Capistrano deploy Magento project in an efficient wayCapistrano deploy Magento project in an efficient way
Capistrano deploy Magento project in an efficient waySylvain Rayé
 
Deploying Rails Apps with Chef and Capistrano
 Deploying Rails Apps with Chef and Capistrano Deploying Rails Apps with Chef and Capistrano
Deploying Rails Apps with Chef and CapistranoSmartLogic
 
Deploy made easy (even on Friday)
Deploy made easy (even on Friday)Deploy made easy (even on Friday)
Deploy made easy (even on Friday)Riccardo Bini
 
Deployment with capifony
Deployment with capifonyDeployment with capifony
Deployment with capifonyJan De Coster
 
Deployment with capistrano
Deployment with capistranoDeployment with capistrano
Deployment with capistranosagar junnarkar
 
Php Inside - confoo 2011 - Derick Rethans
Php Inside -  confoo 2011 - Derick RethansPhp Inside -  confoo 2011 - Derick Rethans
Php Inside - confoo 2011 - Derick RethansBachkoutou Toutou
 
Midwest php 2013 deploying php on paas- why & how
Midwest php 2013   deploying php on paas- why & howMidwest php 2013   deploying php on paas- why & how
Midwest php 2013 deploying php on paas- why & howdotCloud
 
Rock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsRock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsPablo Godel
 
Pyramid Deployment and Maintenance
Pyramid Deployment and MaintenancePyramid Deployment and Maintenance
Pyramid Deployment and MaintenanceJazkarta, Inc.
 
Deploying Symfony | symfony.cat
Deploying Symfony | symfony.catDeploying Symfony | symfony.cat
Deploying Symfony | symfony.catPablo Godel
 
Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11Yury Pliashkou
 
Stress Free Deployment - Confoo 2011
Stress Free Deployment  - Confoo 2011Stress Free Deployment  - Confoo 2011
Stress Free Deployment - Confoo 2011Bachkoutou Toutou
 
Automating Complex Setups with Puppet
Automating Complex Setups with PuppetAutomating Complex Setups with Puppet
Automating Complex Setups with PuppetKris Buytaert
 
Automating Post Exploitation with PowerShell
Automating Post Exploitation with PowerShellAutomating Post Exploitation with PowerShell
Automating Post Exploitation with PowerShellEnclaveSecurity
 
Virtualizing Development
Virtualizing DevelopmentVirtualizing Development
Virtualizing DevelopmentAdam Culp
 

Similar to Using Capifony for Symfony apps deployment. (20)

Using Capifony for Symfony apps deployment (updated)
Using Capifony for Symfony apps deployment (updated)Using Capifony for Symfony apps deployment (updated)
Using Capifony for Symfony apps deployment (updated)
 
Retrofitting Continuous Delivery
Retrofitting Continuous Delivery Retrofitting Continuous Delivery
Retrofitting Continuous Delivery
 
Beyond Puppet
Beyond PuppetBeyond Puppet
Beyond Puppet
 
Capistrano deploy Magento project in an efficient way
Capistrano deploy Magento project in an efficient wayCapistrano deploy Magento project in an efficient way
Capistrano deploy Magento project in an efficient way
 
Deploying Rails Apps with Chef and Capistrano
 Deploying Rails Apps with Chef and Capistrano Deploying Rails Apps with Chef and Capistrano
Deploying Rails Apps with Chef and Capistrano
 
Deploy made easy (even on Friday)
Deploy made easy (even on Friday)Deploy made easy (even on Friday)
Deploy made easy (even on Friday)
 
Deployment with capifony
Deployment with capifonyDeployment with capifony
Deployment with capifony
 
Sprint 17
Sprint 17Sprint 17
Sprint 17
 
Deployment with capistrano
Deployment with capistranoDeployment with capistrano
Deployment with capistrano
 
Php Inside - confoo 2011 - Derick Rethans
Php Inside -  confoo 2011 - Derick RethansPhp Inside -  confoo 2011 - Derick Rethans
Php Inside - confoo 2011 - Derick Rethans
 
It gilde 20150209
It gilde 20150209It gilde 20150209
It gilde 20150209
 
Midwest php 2013 deploying php on paas- why & how
Midwest php 2013   deploying php on paas- why & howMidwest php 2013   deploying php on paas- why & how
Midwest php 2013 deploying php on paas- why & how
 
Rock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsRock Solid Deployment of Web Applications
Rock Solid Deployment of Web Applications
 
Pyramid Deployment and Maintenance
Pyramid Deployment and MaintenancePyramid Deployment and Maintenance
Pyramid Deployment and Maintenance
 
Deploying Symfony | symfony.cat
Deploying Symfony | symfony.catDeploying Symfony | symfony.cat
Deploying Symfony | symfony.cat
 
Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11Capifony. Minsk PHP MeetUp #11
Capifony. Minsk PHP MeetUp #11
 
Stress Free Deployment - Confoo 2011
Stress Free Deployment  - Confoo 2011Stress Free Deployment  - Confoo 2011
Stress Free Deployment - Confoo 2011
 
Automating Complex Setups with Puppet
Automating Complex Setups with PuppetAutomating Complex Setups with Puppet
Automating Complex Setups with Puppet
 
Automating Post Exploitation with PowerShell
Automating Post Exploitation with PowerShellAutomating Post Exploitation with PowerShell
Automating Post Exploitation with PowerShell
 
Virtualizing Development
Virtualizing DevelopmentVirtualizing Development
Virtualizing Development
 

More from Žilvinas Kuusas

Use Symfony Messenger Component and CQRS!
Use Symfony Messenger Component and CQRS!Use Symfony Messenger Component and CQRS!
Use Symfony Messenger Component and CQRS!Žilvinas Kuusas
 
Ansible: infrastructure automation for everyone
Ansible: infrastructure automation for everyoneAnsible: infrastructure automation for everyone
Ansible: infrastructure automation for everyoneŽilvinas Kuusas
 
Automated cryptocurrency trading
Automated cryptocurrency tradingAutomated cryptocurrency trading
Automated cryptocurrency tradingŽilvinas Kuusas
 
Continuously delivering value
Continuously delivering valueContinuously delivering value
Continuously delivering valueŽilvinas Kuusas
 
Baby steps to Domain-Driven Design
Baby steps to Domain-Driven DesignBaby steps to Domain-Driven Design
Baby steps to Domain-Driven DesignŽilvinas Kuusas
 

More from Žilvinas Kuusas (9)

Use Symfony Messenger Component and CQRS!
Use Symfony Messenger Component and CQRS!Use Symfony Messenger Component and CQRS!
Use Symfony Messenger Component and CQRS!
 
Ansible: infrastructure automation for everyone
Ansible: infrastructure automation for everyoneAnsible: infrastructure automation for everyone
Ansible: infrastructure automation for everyone
 
Automated cryptocurrency trading
Automated cryptocurrency tradingAutomated cryptocurrency trading
Automated cryptocurrency trading
 
Continuous delivery
Continuous deliveryContinuous delivery
Continuous delivery
 
Continuously delivering value
Continuously delivering valueContinuously delivering value
Continuously delivering value
 
Code reviews
Code reviewsCode reviews
Code reviews
 
Baby steps to Domain-Driven Design
Baby steps to Domain-Driven DesignBaby steps to Domain-Driven Design
Baby steps to Domain-Driven Design
 
Community and open source
Community and open sourceCommunity and open source
Community and open source
 
Microservice architecture
Microservice architectureMicroservice architecture
Microservice architecture
 

Recently uploaded

UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6DianaGray10
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024SkyPlanner
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfDianaGray10
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 

Recently uploaded (20)

UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
201610817 - edge part1
201610817 - edge part1201610817 - edge part1
201610817 - edge part1
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 

Using Capifony for Symfony apps deployment.