-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
2 lines (2 loc) · 12.1 KB
/
index.html
1
2
<!DOCTYPE html><html lang=fr><head><link href="http://gmpg.org/xfn/11" rel=profile /><meta charset=UTF-8 /><meta content="IE=edge" http-equiv=X-UA-Compatible /><meta content="text/html; charset=utf-8" http-equiv=content-type /><meta content="width=device-width, initial-scale=1.0, maximum-scale=1" name=viewport /><meta content="Blog de Bob Maerten ou y sont exposés en vrac, humeurs, interrogations, pâtisseries, développement web, systèmes Linux et autres curiosités." name=description /><title>Accueil · Bob Maerten</title><meta content="Bob Maerten" property="dc:creator"/><meta content="text/html" property="dc:format"/><meta content=fr-FR property="dc:language"/><meta content="Bob Maerten" property="og:site_name"/><meta content=website property="og:type"/><meta content="https://bobmaerten.eu" property="og:url"/><meta content=Accueil property="og:title"/><meta content="Humeurs, interrogations, pâtisseries, développement web, systèmes Linux et autres curiosités" property="og:description"/><meta content="https://bobmaerten.eu/img/avatar2014-89449806.jpg" property="og:image"/><meta content="50.348923;3.488592" name="geo.position"/><meta content="Valenciennes, Nord" name="geo.placename"/><meta content=FR-59 name="geo.region"/><meta content="@bobmaerten" name="twitter:site"/><meta content=Accueil name="twitter:title"/><meta content="Humeurs, interrogations, pâtisseries, développement web, systèmes Linux et autres curiosités" name="twitter:description"/><meta content=summary name="twitter:card"/><meta content="https://bobmaerten.eu/img/avatar2014-89449806.jpg" name="twitter:image"/><meta content=Accueil itemprop=name /><meta content="Humeurs, interrogations, pâtisseries, développement web, systèmes Linux et autres curiosités" itemprop=description /><meta content="https://bobmaerten.eu/img/avatar2014-89449806.jpg" itemprop=image /><link href="https://plus.google.com/+BobMaerten" rel=publisher /><link href="/atom.xml" rel=alternate title="Bob Maerten" type="application/rss+xml"/><meta content=yes name=mobile-web-app-capable /><meta content="Bob Maerten" name=application-name /><link href="/chrome-touch-icon-192x192.png" rel=icon sizes=192x192 /><meta content=yes name=apple-mobile-web-app-capable /><meta content=black name=apple-mobile-web-app-status-bar-style /><meta content="Bob Maerten" name=apple-mobile-web-app-title /><link href="/apple-touch-icon.png" rel=apple-touch-icon /><meta content="ms-touch-icon-144x144-precomposed.png" name=msapplication-TileImage /><meta content="#F5F5F5" name=msapplication-TileColor /><meta content="#F5F5F5" name=theme-color /><link href="/favicon-196x196.png" rel=icon sizes=196x196 type="image/png"/><link href="/favicon-160x160.png" rel=icon sizes=160x160 type="image/png"/><link href="/favicon-96x96.png" rel=icon sizes=96x96 type="image/png"/><link href="/favicon-32x32.png" rel=icon sizes=32x32 type="image/png"/><link href="/favicon-16x16.png" rel=icon sizes=16x16 type="image/png"/><link href="/favicon.ico" rel="shortcut icon"/><link href="css/poole-812330fe.css" rel=stylesheet /><link href="css/syntax-79e04e9e.css" rel=stylesheet /><link href="css/lanyon-7e4dec9c.css" rel=stylesheet /><link href="css/bobmaerten-42491b32.css" rel=stylesheet /><link href="https://fonts.googleapis.com/css?family=PT+Serif:400,400italic,700%7CPT+Sans:400" rel=stylesheet /><link href="/atom.xml" rel=alternate title=RSS type="application/rss+xml"/></head></html><body><input class=sidebar-checkbox id=sidebar-checkbox type=checkbox /><div class=sidebar id=sidebar><div class=sidebar-item><a class="image avatar" href="/"><img srcset="img/avatar2014_2x-09ee3761.jpg 2x" alt="Photo de Bob Maerten" src="img/avatar2014-89449806.jpg"/></a><p>Humeurs, interrogations, pâtisseries, développement web, systèmes Linux et autres curiosités</p></div><nav class=sidebar-nav><a class=sidebar-nav-item href="/about/">À propos</a><a class="sidebar-nav-item active " href="/">Blog</a><a class=sidebar-nav-item href="/blog/archives/">Archives</a><a class=sidebar-nav-item href="/blog/tags/">Catégories</a><a class=sidebar>-nav-item href=data.settings.social.twitter.url = data.settings.social.twitter.name</a><a class=sidebar-nav-item href="https://github.com/bobmaerten">GitHub</a><a class=sidebar-nav-item href="#email-protection-uryyb@oboznregra.rh">E-mail</a></nav><div class=sidebar-item><p>Theme <a href="http://lanyon.getpoole.com/">Lanyon </a>made by <a href="https://twitter.com/mdo"><b>@mdo</b></a></p><p>Bob Maerten / 2012 - 2016.</p></div></div><div class=wrap><div class=masthead><div class=container><h3 class=masthead-title><a href="/" title=Accueil>Bob Maerten</a> <small>Blog perso</small></h3></div></div><div class="container content"><section id=featured-post><div class=posts><div class=post><h1 class=post-title><a href="blog/deploiement-zero-downtime-d-une-application-rails.html">Déploiement zero-downtime d'une application Rails</a></h1><div class="image fit"><img srcset="img/mba2_2x-382c9230.jpg 2x" alt=mba2 src="img/mba2-80a22042.jpg"/></div><span>23 Avril 2016</span> — <span class="post-category post-category-life"><a href="blog/tags/life.html">life</a></span> <span class="post-category post-category-ruby"><a href="blog/tags/ruby.html">ruby</a></span> <span class="post-category post-category-dev"><a href="blog/tags/dev.html">dev</a></span> <span class="post-category post-category-linux"><a href="blog/tags/linux.html">linux</a></span> <p><p>Lors du dernier apéro <a href="http://ruby-nord.org">Ruby Nord</a>, j'ai eu l'opportunité d'exposer les concepts du déploiement d'application Rails sans interruption de service.</p> <p></p><p><a class=button href="blog/deploiement-zero-downtime-d-une-application-rails.html">Lire la suite…</a></p></div></div></section><section id=previous-posts><div class=posts><div class=post><h1 class=post-title><a href="blog/un-nouveau-look-pour-le-blog.html">Un nouveau look pour le blog</a></h1><span> 6 Mars 2016</span> — <span class="post-category post-category-blog"><a href="blog/tags/blog.html">blog</a></span> <p><p>Il y avait décidément trop d'images sur cette page d'accueil et cela faisait quelques temps que je souhaitais rendre plus lisible le texte des billets.</p> <p></p><p><a class=button href="blog/un-nouveau-look-pour-le-blog.html">Lire la suite…</a></p></div><div class=post><h1 class=post-title><a href="blog/une-image-docker-de-base-legere-pour-rails5.html">Une image docker de base légère pour rails5</a></h1><span> 6 Février 2016</span> — <span class="post-category post-category-ruby"><a href="blog/tags/ruby.html">ruby</a></span> <span class="post-category post-category-sysadm"><a href="blog/tags/sysadm.html">sysadm</a></span> <span class="post-category post-category-dev"><a href="blog/tags/dev.html">dev</a></span> <span class="post-category post-category-linux"><a href="blog/tags/linux.html">linux</a></span> <p><p>Une des bonnes pratiques pour la construction d'images docker est de minimiser leur taille et en particulier d'avoir le moins de “couche” possible. D'ailleurs, il y a quelques jours, Docker a <a href="https://www.brianchristner.io/docker-is-moving-to-alpine-linux/">annoncé la migration de ses images officielles</a> de la distribution ubuntu à alpine-linux pour réduire au maximum le volume de données utiles. Parmi ces images, c'est <a href="https://hub.docker.com/_/ruby/"><code>ruby:alpine</code></a> qui m'intéresse particulièrement, et c'était l'occasion rêvée d'expérimenter la création d'une image d'une application de base pour rails 5.0.0-beta2.</p> <p></p><p><a class=button href="blog/une-image-docker-de-base-legere-pour-rails5.html">Lire la suite…</a></p></div><div class=post><h1 class=post-title><a href="blog/un-certificat-let-s-encrypt-toujours-a-jour-sur-le-blog-avec-docker.html">Un certificat Let's Encrypt toujours à jour sur le blog avec Docker</a></h1><span>27 Janvier 2016</span> — <span class="post-category post-category-blog"><a href="blog/tags/blog.html">blog</a></span> <span class="post-category post-category-sysadm"><a href="blog/tags/sysadm.html">sysadm</a></span> <span class="post-category post-category-linux"><a href="blog/tags/linux.html">linux</a></span> <p><p>Depuis l'année dernière ce blog répond exclusivement en HTTPS grâce à un certificat valide et reconnu, issu d'une <a href="https://www.wosign.com">autorité de certification chinoise</a> qui propose (proposait ?) des certificats gratuits. Mais depuis, <a href="https://letsencrypt.org">Let’s encrypt</a> est disponible en béta publique et je cherchais depuis quelques jours un moyen de l'inclure dans la <em>stack</em> d'hébergement de ce blog et permettre la création et le renouvellement automatique de certificat SSL, comme il est promis dans la documentation.</p> <p></p><p><a class=button href="blog/un-certificat-let-s-encrypt-toujours-a-jour-sur-le-blog-avec-docker.html">Lire la suite…</a></p></div><div class=post><h1 class=post-title><a href="blog/utiliser-la-virtualisation-native-d-osx-pour-docker.html">Utiliser la virtualisation native d'OSX pour Docker</a></h1><span>23 Janvier 2016</span> — <span class="post-category post-category-sysadm"><a href="blog/tags/sysadm.html">sysadm</a></span> <span class="post-category post-category-dev"><a href="blog/tags/dev.html">dev</a></span> <span class="post-category post-category-osx"><a href="blog/tags/osx.html">osx</a></span> <p><p>Docker est un outil linux natif et pour l'utiliser sous OSX (ou Windows) il faut passer par une machine virtuelle sous linux pour faire tourner le <em>daemon</em>.</p> <p>Pour cela, la pratique courante est d'installer un hyperviseur (habituellement Virtualbox) afin de faire tourner <code>boot2docker</code>, la micro-VM fournie par Docker afin de l'utiliser sous un autre système. Mais il est désormais possible de s'en passer sous OSX.</p> <p></p><p><a class=button href="blog/utiliser-la-virtualisation-native-d-osx-pour-docker.html">Lire la suite…</a></p></div><div class=post><h1 class=post-title><a href="blog/comportement-des-touches-home-et-end-du-pave-numerique-sous-osx.html">Comportement des touches Home et End du pavé numérique sous OSX</a></h1><span>26 Juin 2015</span> — <span class="post-category post-category-dev"><a href="blog/tags/dev.html">dev</a></span> <span class="post-category post-category-work"><a href="blog/tags/work.html">work</a></span> <span class="post-category post-category-osx"><a href="blog/tags/osx.html">osx</a></span> <p><p>Le truc qui me rendait fous depuis mon passage sous OSX c'était le comportement des touches <code>Home</code> et <code>End</code> du pavé numérique. En tant que développeur, dans mon éditeur de texte, le comportement est d'aller respectivement en début et en fin de ligne. Or dans le navigateur et en particulier dans les <em>textarea</em> de GitHub, le comportement des touches en question est rattaché au <em>viewport</em> du navigateur. Si bien que lorsque naturellement j'appuie sur <code>Home</code> pour revenir en début de ligne, mon navigateur me renvoyait en début de page.</p> <p></p><p><a class=button href="blog/comportement-des-touches-home-et-end-du-pave-numerique-sous-osx.html">Lire la suite…</a></p></div><p><a href="/blog/archives/">Voir tous les billets</a></p></div></section></div></div><label class=sidebar-toggle for=sidebar-checkbox></label><script>(function(document) { var toggle = document.querySelector('.sidebar-toggle'); var sidebar = document.querySelector('#sidebar'); var checkbox = document.querySelector('#sidebar-checkbox'); document.addEventListener('click', function(e) { var target = e.target; if(!checkbox.checked || sidebar.contains(target) || (target === checkbox || target === toggle)) return; checkbox.checked = false; }, false); })(document); </script><script type="text/javascript">!function(){try{var a,b,c,d,g=document.getElementsByTagName("a");for(c=0;g.length-c;c++)try{b=g[c].getAttribute("href"),b&&b.indexOf("#email-protection-")>-1&&b.length>19&&(a="",d=19+b.indexOf("#email-protection-"),b.length>d&&(a=b.substr(18).replace(/[a-zA-Z]/g,function(a){return String.fromCharCode(("Z">=a?90:122)>=(a=a.charCodeAt(0)+13)?a:a-26)})),g[c].setAttribute("href","mailto:"+a))}catch(h){}}catch(h){}}();</script>
</body>