Skip to content
This repository was archived by the owner on Oct 1, 2024. It is now read-only.
Tommy Li edited this page Mar 21, 2017 · 8 revisions

WordPress deployment on Bluemix Container Service

This wiki contains the getting started content posted to both Bluemix and the Accelerate developer advocacy site.

Intro

Containers are a major trend in deploying applications in both public and private clouds. The recent widespread adoption of containers is largely due to the development of standards aimed at making them easier to use, such as the Docker image format and distribution model. One of the key use cases for containers is moving legacy applications to containers, which allows for better distribution, scaling, and maintenance.

Overview

This application showcases the full power of containers and how can we move existing applications to the cloud seamlessly. We provide a full roadmap for developers who have been asked to migrate their apps to the cloud and leverage cloud-native packaging by using containers. We show you how a common multi-component application can be deployed on the Bluemix® Container Service. Each component runs in a separate container or group of containers.

WordPress represents a typical multi-tier app and each component will have its own container(s). The WordPress containers will be the frontend tier and the MySQL container will be the database/backend tier for WordPress.

Manage containers using Kubernetes clusters. Within Bluemix® Container Service, we could easily create Kubernetes clusters to manage and monitor our containers. Applications can be migrated and deployed to Kubernetes clusters with high scalability and manageability. All the images within the containters are created by Docker.

Flow and Diagram

alt text

  1. The user interacts with WordPress via the web interface. The WordPress containers could separate the traffic to each of its container using the LoadBalancer. Each WordPress container will response to its users via HTTP/HTTPS.

  2. Each time users post to any WordPress container, WordPress will post the changes to MySQL database. MySQL database then will store the post data into persistent disks to maintain safe and secure.

  3. When the MySQL container is dead, the MySQL service will restart the container and recover all the data from the persistent disks. When any WordPress container is dead, LoadBalancer will move its traffic to other containers and restart the dead container.

  4. Administrators can monitor and scale the WordPress website via the Kubernetes cluster. Administrators can also monitor and manage multiple Kubernetes clusters via Bluemix® Container Service at the same time.

Components

  • IBM Container Service
  • Kubernetes Cluster
  • MySQL
  • WordPress

Technology

  • Bluemix Container Service

Links

Blog Post

Going “cloud native” is the trend these days and containers are at the heart of this. At its root, being cloud native means structuring teams, culture, and technology to utilize automation and architectures to manage complexity and unlock velocity.

One of the key use cases for being cloud native is moving legacy applications to containers, which allows for better distribution, scaling, and maintenance. The most obvious benefit of containers is application portability where developers are able to run the exact same application on any Linux® machine. This freedom from servers means that you'll never have to be locked down to a specific cloud provider or even a virtualization technology.

In this journey, we show you how to deploy a distributed WordPress application using Kubernetes Cluster on the IBM Bluemix® Container Service. WordPress is a simple, scalable blogging website that developer can easily deploy and integrate using the Bluemix® Container Service.

Clone this wiki locally