Use npm install -g in ~/.local non-root

This articles presents the most convenient way to deal with global node packages as non-root user. By default, npm install -g tries to write a root-writable directory and greets you with: $ npm install -g cypress [..................] \ fetchMetadata: sill resolveWithNewModule cypress@3.8.3 checking in [..................] | fetchMetadata: sill resolveWithNewModu [..................] / fetchMetadata: sill resolveWithNewModule figures@1.7npm WARN checkPermissions Missing write access to /usr/lib/node_modules npm ERR! code EACCES npm ERR! syscall access npm ERR! [Read More]
nodejs  npm  linux 

playlabs: 30 seconds overview

Quick version of the previous article on playlabs $ playlabs Playlabs: the obscene ansible distribution. Init your ssh user with your key and secure sshd and passwordless sudo: playlabs init root@ # all options are ansible options are proxied playlabs init @somehost --ask-become-pass Now your user can install roles: playlabs install docker,firewall,nginx @somehost And deploy a project, examples: playlabs @somehost deploy image=betagouv/mrs:master playlabs @somehost deploy image=betagouv/mrs:master plugins=postgres,django,uwsgi backup_password=foo prefix=ybs instance=hack env. [Read More]

PlayLabs: the Obscene Ansible Distribution, long version

From baremetal to deploying docker images on a PaaS in one command ? PlayLabs is the result of a refactor of playbooks we’ve had in production for a while to acheive hackable docker-based PaaS. The refactor was designed to be Open Source, almost there to beta. PlayLabs combines simple ansible patterns with packaged roles to create a docker orchestrated paas to prototype products for development to production. PlayLabs does not deal with HA, for HA you will need to do the ansible plugins yourself, or use kubernetes … but until then, PlayLabs do everything else, even configure your own sentry or kubernetes servers ! [Read More]


Building Better Containers: A Survey of Container Build Tools [I] - Michael Ducy, Chef CNCF [Cloud Native Computing Foundation] Published on Dec 15, 2017 If you stick to the “industry standard” method of building containers (Dockerfiles), it’s easy to build containers that contain libraries, tools, binaries, and more that you don’t need. One survey showed that over 75% of containers contain a full Operating Systems. So how can you build containers that only contain the bits you require to run a particular application, and nothing more. [Read More]

Unattended LXD setup

LXD requires an interactive tty by default. For non-interactive setup, something like this should be executed:

Then, apt-get install lxd and you’ll have a configured lxd just as if you had interactively configured it !