This repository has been archived on 2025-01-19. You can view files and clone it, but cannot push or open issues or pull requests.
oliverdavies.uk-old-sculpin/docs/talks/deploying-php-applications-with-fabric/index.html
2017-07-21 18:44:18 +01:00

271 lines
13 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html class="no-js" lang="en-GB">
<head>
<title>Deploying PHP Applications with Fabric | Oliver Davies</title>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta property="og:url" content="https://www.oliverdavies.uk/talks/deploying-php-applications-with-fabric/">
<meta property="og:title" content="Deploying PHP Applcations with Fabric"/>
<meta property="og:description" content="You've built your PHP application, now learn how to deploy it with Fabric."/>
<meta property="og:type" content="website"/>
<meta property="og:image" content="https://www.oliverdavies.uk/assets/images/talks/deploying-php-fabric.png"/>
<meta property="og:image:type" content="image/png"/>
<meta property="og:image:width" content="1280"/>
<meta property="og:image:height" content="800"/>
<meta name="twitter:card" content="summary_large_image"/>
<meta name="twitter:image:src" content="https://www.oliverdavies.uk/assets/images/talks/deploying-php-fabric.png">
<meta name="twitter:creator" content="@opdavies"/>
<meta name="twitter:title" content="Deploying PHP Applcations with Fabric"/>
<meta name="twitter:text:description" content="You've built your PHP application, now learn how to deploy it with Fabric."/>
<meta name="twitter:site" content="@opdavies"/>
<link rel="stylesheet" href="https://www.oliverdavies.uk/assets/css/main.css">
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=57" sizes="57x57">
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=114" sizes="114x114">
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=72" sizes="72x72">
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=144" sizes="144x144">
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=60" sizes="60x60">
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=120" sizes="120x120">
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=76" sizes="76x76">
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=152" sizes="152x152">
<link rel="icon" href="/assets/images/me-precedent.jpg?s=160" sizes="160x160">
<link rel="icon" href="/assets/images/me-precedent.jpg?s=96" sizes="96x96">
<link rel="icon" href="/assets/images/me-precedent.jpg?s=32" sizes="32x32">
<link rel="icon" href="/assets/images/me-precedent.jpg?s=16" sizes="16x16">
</head>
<body class="talk talk-full">
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="https://www.oliverdavies.uk/">Oliver Davies</a>
</div>
<div id="navbar" class="collapse navbar-collapse" role="navigation">
<ul class="nav navbar-nav">
<li class="">
<a href="/">About</a>
</li>
<li class="">
<a href="/experience">Experience</a>
</li>
<li class="">
<a href="/testimonials">Testimonials</a>
</li>
<li class="active">
<a href="/talks">Talks</a>
</li>
<li class="">
<a href="/blog">Blog</a>
</li>
<li class="">
<a href="/contact">Contact</a>
</li>
</ul>
</div> </div>
</nav>
<div class="container">
<div class="row">
<main class="col-md-9">
<h1>Deploying PHP Applications with Fabric</h1>
<div class="talk-description">
<p>Youve built your application, and now you just need to deploy it. There are various ways that this could be done from (S)FTP, to SCP and rsync, to running commands like “git pull” and “composer install” directly on the server (not recommended).</p>
<p>My favourite deployment tool of late is <a href="http://www.fabfile.org">Fabric</a> a Python based command line tool for running commands locally as well as on remote servers. Its language and framework agnostic, and unopinionated so you define the steps and workflow that you need from a basic few-step deployment to a full Capistrano style zero-downtime deployment.</p>
<p>This talk will cover some introduction to Fabric and how to write your own fabfiles, and then look at some examples of different use case deployments for your PHP project.</p>
</div>
<div class="talk-slides">
<h2>Slides</h2>
<div class="presentation">
<script async class="speakerdeck-embed" data-id="c147618ce07546ca92f92983c52d6a41" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>
</div> </div>
<div class="talk-video">
<h2>Video</h2>
<div class="embed-container">
<iframe width="560" height="315" src="https://www.youtube.com/embed/kM0MDUJE8ys" frameborder="0" allowfullscreen></iframe>
</div>
</div>
<div class="talk-events">
<h2>Events</h2>
<div class="table-responsive">
<table class="table table-striped talks-table">
<thead>
<tr>
<th style="width: 20%">Date</th>
<th>Event</th>
<th style="width: 10%">Feedback</th>
</tr>
</thead>
<tbody>
<tr>
<td class="vertical-middle">
20 April 2017
<small class="display-block">19:00 (CET)</small>
</td>
<td class="vertical-middle">
<a href="https://nomadphp.com">
Nomad PHP
</a>
<small class="display-block">
Online
</small>
</td>
<td class="vertical-middle">
</td>
</tr>
<tr>
<td class="vertical-middle">
1 October 2017
<small class="display-block">09:00 - 09:45</small>
</td>
<td class="vertical-middle">
<a href="http://conference.phpnw.org.uk/phpnw17">
PHP North West 2017
</a>
<small class="display-block">
Manchester, UK
</small>
</td>
<td class="vertical-middle">
</td>
</tr>
</tbody>
</table>
</div>
</div> </main>
<div class="col-md-3">
<div class="panel badges text-center">
<a href="https://assoc.drupal.org/membership" title="Im a Drupal Association member." class="is-block">
<img
src="//www.oliverdavies.uk/assets/images/badges/da-individual-member.png"
alt="Drupal Association Individual Member"
width="200"
/>
</a>
<div class="is-flex align-items-center">
<img
src="//www.oliverdavies.uk/assets/images/badges/acquia-d8-developer.png"
alt="Acquia Certified Developer - Drupal 8 Exam Badge"
class="is-2"
/>
<img
src="//www.oliverdavies.uk/assets/images/badges/acquia-d8-back-end.png"
alt="Acquia Certified Back End Specialist - Drupal 8 Exam Badge"
class="is-2"
/>
</div>
<a href="http://conference.phpnw.org.uk/phpnw17" class="is-block">
<img src="//www.oliverdavies.uk/assets/images/badges/phpnw17.png" alt="">
</a>
</div>
<div class="availability panel panel-default">
<div class="panel-heading">Availability</div>
<div class="panel-body">
<p>
<i class="fa fa-thumbs-o-up text-warning"></i>
Currently have limited part-time capacity
</p>
<p>
<i class="fa fa-thumbs-o-down text-danger"></i>
Currently no spare full-time capacity.
</p>
</div>
</div>
</div>
</div> </div>
<footer class="container">
<p class="copyright">
&copy; 2010-2017 Oliver Davies. Built with <a href="https://sculpin.io">Sculpin</a>.
</p>
<div class="meetups">
<h2>Things that I organise</h2>
<ul>
<li class="meetups--drupal-bristol">
<a href="http://www.drupalbristol.org.uk" title="Drupal Bristol">
<img
src="//www.oliverdavies.uk/assets/images/meetups/drupal-bristol.jpeg"
alt="Drupal Bristol logo"
>
</a>
</li>
<li class="meetups--drupalcamp-bristol">
<a href="http://www.drupalcampbristol.co.uk" title="DrupalCamp Bristol">
<img
src="//www.oliverdavies.uk/assets/images/meetups/drupalcamp-bristol.png"
alt="DrupalCamp Bristol logo"
>
</a>
</li>
<li class="meetups--phpsw">
<a href="http://phpsw.uk" title="PHPSW">
<img
src="//www.oliverdavies.uk/assets/images/meetups/phpsw.jpeg"
alt="PHPSW logo"
>
</a>
</li>
</ul>
</div>
</footer>
<script src="https://www.oliverdavies.uk/assets/js/site.js"></script>
<script>(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-11967257-1', 'auto'); ga('send', 'pageview');</script>
</body>
</html>