This document discusses using CommandBox and Docker to deploy real projects. It covers background on the development workflow and environments, benefits of Docker and CommandBox, code cleanup tools like CFLint and git hooks, serving apps with CommandBox, server monitoring with Prometheus, dynamic configuration, caching, session storage, logging with Elasticsearch and Kibana, load balancing with Kubernetes, data changes, scheduled tasks, and canary/blue-green deployments. The overall message is that CommandBox and tools can provide structure and simplify transitions to help teams succeed in deploying applications.
This is a presentation I gave on 4Developers conference. http://2016.4developers.org.pl/en/program/speakers/hodowany-adam/
Thanks to tools like vagrant, puppet/chef, and Platform as a Service services like Heroku, developers are extremely used to being able to spin up a development environment that is the same every time. What if we could go a step further and make sure our development environment is not only using the same software, but 100% configured and set up like production. Docker will let us do that, and so much more. We'll look at what Docker is, why you should look into using it, and all of the features that developers can take advantage of.
Invited to introduce Docker to the Dept. for Information and Communication Services (Informations- und Kommunikationsdienste - IuK) at the University of Rostock.
The document discusses the tools and practices used by a Ruby development team, including using RVM for managing Ruby versions and gemsets, Postgres.app for the database, Pow for local development, Git for version control, GitHub pull requests for code reviews, CircleCI for continuous integration and deployment to Heroku, Capistrano or Mina for deployment automation, and services like Rollbar and HipChat for error tracking and communication. Consistent coding styles, Sublime Text settings, and code quality practices like testing and reviews are also recommended.
My talk from DevOpsCon Berlin 2016. Ansible is a radically simple and lightweight provisioning framework which makes your servers and applications easier to provision and deploy. By orchestrating your application deployments you gain benefits such as documentation as code, testability, continuous integration, version control, refactoring, automation and autonomy of your deployment routines, server and application configuration. Ansible uses a language that approaches plain English, uses SSH and has no agents to install on remote systems. It is the simplest way to automate and orchestrate application deployment, configuration management and continuous delivery. In this tutorial you will be given an introduction to Ansible and learn how to provision Linux servers with a web-proxy, a database and some other packages. Furthermore we will automate zero downtime deployment of a Java application to a load balanced environment.
This document provides an overview and agenda for a presentation on Nomad, an open source cluster scheduler created by HashiCorp. The presentation will cover Nomad fundamentals including architecture, job configuration, and scheduling. It will also demonstrate Nomad's ability to schedule a million containers across thousands of hosts on Google Cloud Platform.
The document discusses deploying PHP applications on Heroku. It provides an overview of Heroku, including that it is a Platform-as-a-Service, was launched in 2007, uses Amazon Web Services, offers many add-ons, allows easy scaling, supports PostgreSQL, and offers some free usage. It then walks through deploying a basic "Hello World" PHP app on Heroku, including creating an app, adding code, committing and pushing to Heroku, and viewing the deployed app.
BlaBlaCar is moving its infrastructure to be fully containerized using rkt and CoreOS. Key tools developed include dgr for building and running containers and ggn for managing services on fleet clusters. Service discovery is handled by go-nerve and go-synapse which monitor services in Zookeeper. The infrastructure aims for standardization, simplicity and removing unique configurations ("snowflakes"). Over 300 servers across multiple data centers are now managed this way.
Varnish is a caching proxy usually used for high profile Drupal sites. However, configuring Varnish is not an easy task that requires a lot of work. It is even more difficult when it comes to creating a scalable cluster of Varnish nodes. Fortunately, there is a solution. I’ve been working on kube-httpcache project (https://github.com/mittwald/kube-httpcache) that takes care of many things such as routing, scaling, broadcasting, config-reloading, etc... If you need to run more than one instance of Varnish, this session is for you. You will learn how to: * Launch a single instance of Varnish in Kubernetes. * Configure Varnish for Drupal. * Scale Varnish from 1 to N nodes as part of the cluster. * Make your Varnish cluster resilient. * Reload Varnish configs on the fly. * Properly invalidate cache for multiple Varnish nodes. This session requires some basic understanding of Docker and Kubernetes; however, I will provide some intro if you are new to it. Join this session and enjoy!
This document summarizes Dockerizing a Django application. It describes the speakers' experiences moving from a non-Dockerized setup with many issues, like outdated images and long recovery times, to a Dockerized setup with improved scalability, documentation, and development workflows. Key aspects of the new setup include using Docker Compose to run multiple services, Docker Machine to provision environments, and Docker Swarm for production deployments across multiple instances.
This document provides an overview of advanced task scheduling capabilities with Amazon ECS. It discusses the ECS placement engine which gives developers more control over task placement through constraints and strategies. Constraints allow targeting specific instance types, availability zones or custom attributes. Strategies like spread, binpack, and affinity can distribute tasks across instances. The document demonstrates how to use these features to optimize task placement and provides examples of companies using ECS for production workloads.
Web Application Development with Quasar Framework In this tutorial, You can see a rough development process with Quasar Framework which is known as front-end framework with VueJS components. - Frontend : Quasar (based on Vue.js) - Backend : Google firebase - Result * Web Page : https://checkin.wonyong.net * Play Store : https://play.google.com/store/apps/details?id=org.kopochecker.app - Youtube (Korean) : https://www.youtube.com/watch?v=HEttw-RSXxg&list=PLlWoe5hcgrk4qQVIBxDA3d-5ZRfYuITxb
Sematext engineer Rafal Kuc (@kucrafal) walks through the details of running high-performance, fault tolerant Elasticsearch clusters on Docker. Topics include: Containers vs. Virtual Machines, running the official Elasticsearch container, container constraints, good network practices, dealing with storage, data-only Docker volumes, scaling, time-based data, multiple tiers and tenants, indexing with and without routing, querying with and without routing, routing vs. no routing, and monitoring. Talk was delivered at DevOps Days Warsaw 2015.
This document discusses using infrastructure as code to automate server setup and deployment using Ansible. It outlines benefits like reducing human error, allowing developers and operations teams to work seamlessly through continuous integration and testing. Specifics of the infrastructure as code stack used are covered, including Ansible for configuration management, Docker for containers, and Vagrant for local virtual machine provisioning. Challenges and lessons learned around testing, debugging, and migrating existing systems are also presented. The overall message is that infrastructure as code takes time to implement but results in major improvements to deployment speed, reliability, and ability to rapidly iterate.
Artifact Registry 可以說是 Container Registry 的進化版,可讓貴機構集中管理容器映像檔和語言套件 (例如 Maven 和 npm)。Artifact Registry 與 Google Cloud 的工具和執行階段全方位整合,並且支援原生構件通訊協定,讓您輕鬆與持續整合/持續推送軟體更新 (CI/CD) 工具整合,進而設定自動化管道。
Golang 也因為開源、程式語法的簡潔開始受到程式開發人員的喜好。也因些在搭建微服務架構應用程式的時候有很多選擇,在 Web 框架中就有 Gin, Echo, Beego 等等,每一個 Web 框架都有其不同的特性,而 Go-Kit 是一個微服務開發的工具鏈,本場次將基於 Kuberentes/Istio 透過 Go-kit 搭建微服務架構應用程式實戰中的工程項目進行說明
BigQuery =Command line tools and Tips for business use= Mulodo Open Study Group (MOSG) @Ho chi minh, Vietnam http://www.meetup.com/Open-Study-Group-Saigon/events/231504491/
Do you have this build script that with a single command builds your software? Does this still apply on a brand new PC? This presentation takes you on the journey to construct complex build environments using Docker. The journey follows our lessons learned and experiences going from hand crafted to Dockerized build environments. We will look at different patterns to build modular containers, ways to chain containers and the specialties of Windows containers.
Bridget Kromhout gave a presentation on how her company DramaFever uses Docker for streaming video. They run Docker in production and have seen peak loads of tens of thousands of requests per second. They use Docker, AWS, and other technologies to build and deploy images automatically and scale their infrastructure elastically. Bridget discussed challenges they faced with Docker and solutions like changing the storage driver and registry configuration to address issues with builds and image pulls failing.
This document discusses using Fabric for Python application deployment and configuration management. It provides an overview of Fabric basics like tasks, roles, and environments. It also describes using Fabric for common operations like code deployment, database migrations, and managing server growth. Key advantages of Fabric include its simple task-based interface and ability to control multiple servers simultaneously. The document provides an example of using Fabric for a full deployment process including pushing code, running migrations, and restarting processes.
Deploying containerized client-side web applications requires a different configuration strategy compared to system applications. The runtime of client-side web applications is the client-side web browser and, unlike other applications which can utilize environment values, configuration has to be hard-coded in the Javascript source code.
Talk about dependencies in C and C++, both in SW design and architecture, and also about package managers and dependency managers.
This document provides instructions for setting up a hack environment using Docker containers. It discusses pros and cons of different options like using a real server, cloud services, or virtual machines. Docker is recommended for its ease of use, templates, and ability to run on multiple platforms. Example Dockerfiles and Docker Compose files are provided to set up environments like IIS, Nginx, LEMP stacks, and vulnerable apps. Specific vulnerabilities like Heartbleed and DHClient RCE are demonstrated using Docker images. Finally, Docker images for security tools like Kali Linux and REMnux are mentioned.
Get hands-on with security features and best practices to protect your containerized services. Learn to push and verify signed images with Docker Content Trust, and collaborate with delegation roles. Intermediate to advanced level Docker experience recommended, participants will be building and pushing with Docker during the workshop. Led By Docker Security Experts: Riyaz Faizullabhoy David Lawrence Viktor Stanchev Experience Level: Intermediate to advanced level Docker experience recommended
The document discusses using Fabric for deployment and system administration tasks across multiple servers. It provides examples of Fabric configuration, defining roles for servers, writing tasks to run commands on servers, and how to structure tasks for a full deployment workflow. Fabric allows running commands remotely via SSH and provides tools for task composition and failure handling.
Title: Introduction to Docker Abstract: During the year since it’s inception, Docker have changed our perception of the OS-level Virtualization also called Containers. At this workshop we will introduce the concept of Linux containers in general and Docker specifically. We will guide the participants through a practical exercise that will include use of various Docker commands and a setting up a functional Wordpress/MySQL system running in two containers and communication with each other using Serf Topics: Docker Installation (in case is missing) Boot2Docker Docker commands - basic commands - different types of containers - Dockerfiles Serf Wordpress Exercise - setting up Serf cluster - deploying MySQL - deploying Wordpress and connecting to MySQL Prerequisites: Working installation of Docker On Mac - https://docs.docker.com/installation/mac/ On Windows - https://docs.docker.com/installation/windows/ Other Platforms - https://docs.docker.com/installation/#installation
♥ Play Framework is an open-source web application framework for Java and Scala that follows the model-view-controller (MVC) architectural pattern. It supports dependency injection, routing, and asynchronous programming. Some key features include routing, controllers, database access using Slick, evolutions for database schema changes, and support for functional programming concepts like Option, Either, and Future.
Ceph, Docker, Heroku Slugs, CoreOS and Deis simple overview, extended version for my developer colleagues
The document discusses setting up Docker Toolbox and creating a Docker machine to run Docker containers. It provides steps to install Docker Toolbox, create a Docker machine, set environment variables, create a Docker network, start Docker Compose, and generate SSL certificates. It also discusses using Jenkins Job DSL plugins to generate Jenkins jobs for building, deploying, and managing a sample project with Docker containers.
This document provides an overview of the Play! web framework for Java, including how it differs from traditional Java web development approaches by avoiding servlets, portlets, XML, EJBs, JSPs, and other technologies. It demonstrates creating a simple PDF generation application using Play!, including defining a model, controller, and view. The framework uses conventions over configuration and allows rapid development through features like automatic reloading of code changes and helpful error pages.
This document provides an overview of Docker containers and how to use Docker for development and production environments. It discusses Docker concepts like images, containers, and Dockerfiles. It also demonstrates how to build images, run containers, link containers, manage ports, and use Docker Compose. The document shows how Docker can be used to develop applications using technologies like ASP.NET, Node.js, and Go. It also covers testing, deploying to production, and optimizing containers for production.
The slides from my Deployment Tactics talk at the ThinkVitamin Code Management online conference (http://thinkvitamin.com/online-conferences/code-manage-deploy/).
This document discusses different build tools including Ant, Maven, and Gradle. It provides examples of build files for each tool and compares their characteristics such as flexibility, conventions, dependencies management, and extensibility. Ant is described as very flexible but verbose and complex to write and maintain. Maven enforces conventions but has a rigid structure. Gradle combines flexibility, conventions, and extensibility through its Groovy DSL.
This document summarizes Deepak Garg's presentation on Fabric and app deployment automation. Fabric allows defining Python functions to automate system administration and deployment tasks across multiple servers. Example functions showed provisioning VMs, installing packages, deploying code, and more. Fabric offers commands to run commands remotely, upload/download files, and decorators to define server groups and task properties. The goals of Fabric include testing infrastructure, deploying and scaling apps across identical environments, and making systems administration tasks Pythonic and automated.
This document discusses Docker and provides an introduction and overview. It introduces Docker concepts like Dockerfiles, commands, linking containers, volumes, port mapping and registries. It also discusses tools that can be used with Docker like Fig, Baseimage, Boot2Docker and Flynn. The document provides examples of Dockerfiles, commands and how to build, run, link and manage containers.
The document discusses setting up Docker and DevOps tools. It describes installing Docker Toolbox, creating a docker machine, setting environment variables, creating a network, starting docker-compose, generating SSL certificates, and accessing the Docker host URL. It also discusses creating a Jenkins job to generate other jobs for building, deploying, and monitoring a project from a Git repository using a Groovy script and the Job DSL plugin. References for the Job DSL plugin and scripting are provided.
Presentation on Docker and Docker Compose. Includes basic commands to get started with Docker container. This presentation was presented on 9th February, 2018
Sami provided a beginner-friendly introduction to Amazon Web Services (AWS), covering essential terms, products, and services for cloud deployment. Participants explored AWS' latest Gen AI offerings, making it accessible for those starting their cloud journey or integrating AI into coding practices.
Explore the rapid development journey of TryBoxLang, completed in just 48 hours. This session delves into the innovative process behind creating TryBoxLang, a platform designed to showcase the capabilities of BoxLang by Ortus Solutions. Discover the challenges, strategies, and outcomes of this accelerated development effort, highlighting how TryBoxLang provides a practical introduction to BoxLang's features and benefits.
Are you wondering how to migrate to the Cloud? At the ITB session, we addressed the challenge of managing multiple ColdFusion licenses and AWS EC2 instances. Discover how you can consolidate with just one EC2 instance capable of running over 50 apps using CommandBox ColdFusion. This solution supports both ColdFusion flavors and includes cb-websites, a GoLang binary for managing CommandBox websites.
Discover BoxLang, the innovative JVM programming language developed by Ortus Solutions. Designed to harness the power of the Java Virtual Machine, BoxLang offers a modern approach to application development with robust performance and scalability. Join us as we explore the capabilities of BoxLang, its syntax, and how it enhances productivity in software development.
Unlock the secrets of seamless ColdFusion error troubleshooting! Join us to explore the potent capabilities of Visual Studio Code (VS Code) and ColdFusion Builder (CF Builder) in debugging. This hands-on session guides you through practical techniques tailored for local setups, ensuring a smooth and efficient development experience.
CommandBox was highlighted as a powerful web hosting solution, perfect for developers and businesses alike. Featuring a built-in server and command-line interface, CommandBox simplified web application management. Developers could deploy multiple application instances simultaneously, optimizing development workflows. CommandBox's efficient deployment processes ensured reliable web hosting, seamlessly integrating into existing workflows for scalability and feature enhancements.
Join me for an insightful journey into task scheduling within the ColdBox framework. In this session, we explored how to effortlessly create and manage scheduled tasks directly in your code, enhancing control and efficiency in applications and modules. Attendees experienced a user-friendly dashboard for seamless task management and monitoring. Whether you're experienced with ColdBox or new to it, this session provided practical knowledge and tips to streamline your development workflow.
In this session, we explored how the cbfs module empowers developers to abstract and manage file systems seamlessly across their lifecycle. From local development to S3 deployment and customized media providers requiring authentication, cbfs offers flexible solutions. We discussed how cbfs simplifies file handling with enhanced workflow efficiency compared to native methods, along with practical tips to accelerate complex file operations in your projects.
In this session, we explored setting up Playwright, an end-to-end testing tool for simulating browser interactions and running TestBox tests. Participants learned to configure Playwright for applications, simulate user interactions to stress-test forms, and handle scenarios like taking screenshots, recording sessions, capturing Chrome dev tools traces, testing login failures, and managing broken JavaScript. The session also covered using Playwright with non-ColdBox sites, providing practical insights into enhancing testing capabilities.
Discover Passkeys, the next evolution in secure login methods that eliminate traditional password vulnerabilities. Learn about the CBSecurity Passkeys module's installation, configuration, and integration into your application to enhance security.
In this session, we discussed the critical need for comprehensive backups across all aspects of our industry—from code and databases to webservers, file servers, and network configurations. Emphasizing the importance of proactive measures, attendees were urged to ensure their backup systems were tested through restoration processes. The session underscored the risk of discovering backup issues only during crises, highlighting the necessity of verifying backup integrity through restoration tests.
Participants explored how visual and functional coherence strengthened brand identity and streamlined development in this session. They learned to maintain consistency across platforms and enhance user experiences using Design Systems. Ideal for brand designers, UI/UX designers, developers, and product managers who sought to optimize efficiency and ensure consistency across projects.
Explore the latest in ColdBox Debugger v4.2.0, featuring the Hyper Collector for HTTP/S request tracking, Lucee SQL Collector for query profiling, and Heap Dump Support for memory leak debugging. Enhancements like the revamped Request Dock and improved SQL/JSON formatting streamline debugging for optimal ColdBox application performance and stability. Ideal for developers familiar with ColdBox, this session focuses on leveraging advanced debugging tools to enhance development efficiency.
Thinking about freelancing? It's not just about coding solo and avoiding coworkers. Join me as I share insights from my 15-year freelance journey, covering everything from managing invoices to client communication styles. This session blends ColdFusion-specific tips with general freelance and consulting advice, with time for audience Q&A.