Brocade) • WiFi Access Points (AP) and AP Controller/Manager • Acquired by Brocade - Campus Switch product offering • WiFi location based device detection and Analytics • Campus Switch Management/Monitoring and Metrics publishing platform • WE ARE HIRING!!!
2. Basic understanding of a docker container 3. Build a target env container that packages your app 4. Run your app in the target env container orchestrated using docker-compose
Schoenfelder: @gotbones • Modern rewrite of Exrm - which relies on Relx (meant for Erlang apps) • Support for umbrella projects and multi-app/per-app release build • Support for release env and profiles • Event hooks, custom commands, EEx overlay templates
Ship, Run any App Anywhere! • Not VMs!!! Feather-lite VMs - smaller & faster • Contract between Dev and Ops/Infra • Infra as code - blurred lines with config management/provisioning eco-system like salt-stack, puppet, terraform, etc • chroot on steroids - runc, lxc, cgroups ◦ likes of FreeBSD/Solaris jails, ◦ AIX mini-partitions
GPB and MQTT 2. Base image elixir:1.4.2 3. ENV a. LANG=en_US.UTF-8, LC_ALL=${LANG} b. MIX_ENV=prod c. REPLACE_OS_VARS=true 4. Execute `docker build -f Dockerfile -t name/tag .`
be done better in previous approaches? 2. Alpine Linux - apk vs apt-get/yum 3. Define docker build step to compile and `mix release` 4. Copy release package tarball with ERTS to S3, binary repo, etc 5. Define docker release step 6. Download/Copy release package tarball and explode in release container 7. Use docker-compose to stitch and orchestrate containers to run app suite
3. Decouple build and release container images 4. Single purpose docker runtime container 5. docker-compose for container orchestration and service dependencies
in umbrella app - rolled my own with bash script 2. Overlay network and DNS Service discovery to enable cross containers and physical machine BEAM processes connectivity 3. Hot upgrade-releases with distillery (still relevant in docker deployments???) 4. Multi-host deployments and service orchestration with K8