Welcome!
This repository contains a collections of tutorials about DevOps technologies & good practices and how to integrate them with Alibaba Cloud.
For convenience, you can download this repository, which is particularly helpful since many tutorials come with attached resources (such as configuration scripts or sample projects).
If you want to contribute (to fix errors, add new content, …etc.) or simply follow this project, please visit the official GitHub page.
Tutorials
-
DevOps for small / medium web apps
Comprehensive guide about how to develop and deploy a web application with Alibaba Cloud.
DevOps, CI/CD, high-availability
-
General introduction
This is the first part of a tutorial that introduces all the necessary concepts in order to develop and maintain a small / medium web application on Alibaba Cloud.
CI/CD, Git, GitLab Flow
-
GitLab installation and configuration
This part explains how to install and configure GitLab. It deals with cloud infrastructure, HTTPS, Mail server, automatic backup, GitLab Runner, user management, maintenance and upgrade.
GitLab
-
Continuous Integration
In this part we introduce continuous integration with a very simple pipeline. It is based on a sample web application that combines a backend in Java and a frontend in React.
Continuous Integration, Java, Spring Boot, HTML, CSS, JavaScript, React, MySQL, Flyway, build tools
-
Code quality
This part focuses on how to integrate a "quality" stage in the CI pipeline thanks to SonarQube. The idea is to find bugs earlier and manage technical debt more easily.
Code quality, SonarQube, unit test code coverage, PostgreSQL RDS, Let's Encrypt
-
Continuous Delivery
This is the part were we finally deploy our application in the cloud. It introduces a highly available architecture, explains how to use Terraform and Packer to create cloud resources, and how to make the process automatic by extending our GitLab pipeline.
Continuous delivery, high-availability, Terraform, Packer, infrastructure as code, GitLab flow
-
HTTPS configuration
This part is a direct extension to the part 4: it explains how to configure HTTPS with SSL/TLS certificates from "Let's Encrypt".
HTTPS, SSL/TLS certificate, Let's Encrypt, OpenAPI, Python, Terraform, Packer
-
Log management
Logs allow administrators and developers to better understand how an application behave. However it can be quite challenging to consult logs when they are located on several servers. Log Service is a solution for this problem: it provides tools to collects logs from multiple servers and to let authorized persons to search for information in them.
Log Service, Rsyslog, Logtail, Log Project, Log Store
-
Speeding up CI / CD pipeline
This part is quite short compared to the others: its objective is to reduce the time to process the complete CI / CD pipeline. The solution is to create a custom Docker image for the deployment and to build VM images in parallel.
Dockerfile, Container Registry, GitLab CI
-
General introduction
-
Getting started with CI/CD and Kubernetes
The goal of this tutorial is to explain how to create a CI/CD pipeline in order to deploy an application in Kubernetes running on top of Alibaba Cloud.
CI/CD, Git, GitLab, Docker, Kubernetes, Terraform, Java, Maven, Spring Boot
-
Getting started with CI/CD and Docker Swarm
The goal of this tutorial is to explain how to create a CI/CD pipeline in order to deploy an application in Docker Swarm running on top of Alibaba Cloud.
CI/CD, Git, GitHub, Docker, Docker Swarm, Java, Maven, Spring Boot
-
Getting started with Rancher
Rancher is a multi-cluster Kubernetes management platform. This tutorial explains how to install Rancher and how to integrate it with Alibaba Cloud.
Rancher, Docker, Kubernetes, Terraform