A "Best of the Best Practices" (BOBP) guide to developing in Python.
- "Build tools for others that you want to be built for you." - Kenneth Reitz
- "Simplicity is alway better than functionality." - Pieter Hintjens
Our Virtual Machines are provisioned using Vagrant from a Linux base box to run using VirutalBox. If the Hard Disk space runs out and you cannot remove files to free-up space, you can resize the Hard Disk using some VirtualBox and Linux commands.
The following steps assume you've got a set-up like mine, where:
| // go on you labels pages | |
| // eg https://github.com/cssnext/cssnext/labels | |
| // paste this script in your console | |
| // copy the output and now you can import it using https://github.com/popomore/github-labels ! | |
| var labels = []; | |
| [].slice.call(document.querySelectorAll(".label-link")) | |
| .forEach(function(element) { | |
| labels.push({ | |
| name: element.textContent.trim(), |
| model = Repo.get!(Model, id) | |
| Ecto.Changeset.change(model) | |
| |> Ecto.Model.Timestamps.put_timestamp(:deleted_at, Ecto.DateTime, true) | |
| |> Repo.update |
| Tmux is a "terminal multiplexer", it enables a number of terminals to be accessed and controlled from a single terminal. | |
| If you use Debian/Ubuntu, you can just run apt-get install tmux, and voila. | |
| Since the title was about centos 7, then do the following step to install tmux. | |
| (1). tmux has a library dependency on libevent which, of course, isn’t installed by default. | |
| $ wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz | |
| $ tar xzvf libevent-2.0.21-stable.tar.gz | |
| $ cd libevent-2.0.21-stable | |
| $ ./configure && make |
By the end of this quick guide, you will know how to compile a Phoenix app release using Exrm and run it inside a Docker container. I've found only a couple of articles that discuss getting an Elixir app up and running inside a Docker container, and even those only touched on some parts of the process. The idea is that this guide will give you a full end-to-end example of how to get all the pieces and parts working together so that you are able to deploy your Phoenix application inside a Docker container.
| /* | |
| Go on your labels page (https://github.com/user/repo/labels) | |
| Edit the following label array | |
| or | |
| Use this snippet to export github labels (https://gist.github.com/MoOx/93c2853fee760f42d97f) | |
| and replace it | |
| Paste this script in your console | |
| Press Enter!! |
| # ATTENTION: This is now supported in plug_cowboy as of 2.1.0: | |
| # https://hexdocs.pm/plug_cowboy/Plug.Cowboy.Drainer.html | |
| defmodule DrainStop do | |
| @moduledoc """ | |
| DrainStop Attempts to gracefully shutdown an endpoint when a normal shutdown | |
| occurs. It first shuts down the acceptor, ensuring that no new requests can be | |
| made. It then waits for all pending requests to complete. If the timeout | |
| expires before this happens, it stops waiting, allowing the supervision tree | |
| to continue its shutdown order. |
| #!/bin/bash | |
| # Erlang | |
| ERLANG_VERSION=${ERLANG_VERSION:-20.2} | |
| ERLANG_CACHED_DOWNLOAD="${HOME}/cache/OTP-${ERLANG_VERSION}.tar.gz" | |
| ERLANG_DIR=${ERLANG_DIR:="$HOME/erlang"} | |
| # Elixir | |
| ELIXIR_VERSION=${ELIXIR_VERSION:-1.6.3} | |
| ELIXIR_CACHED_DOWNLOAD="${HOME}/cache/elixir-v${ELIXIR_VERSION}.zip" |