/rails6-k8s

Deploying Rails6 App to a Kubernetes Cluster 使用 k8s 部署 rails6 集群(基于 ruby 2.7)

Primary LanguageRuby

Deploying a Rails6 App to a Kubernetes Cluster

分别使用 docker-compose 和 k8s 部署常用服务:

  • Rails 6,基于 ruby:2.7-alpine 镜像
  • Postgresql 12.2,也支持使用 mysql、mariadb 数据库
  • Redis 5
  • Sidekiq 6

学习资料:

Rails 项目使用 k8s 的步骤

1)先写 Dockerfile 构建镜像

2)再写 docker-compose.yml 和 .env,然后部署应用比如 puma、mysql、redis、sidekiq,要先把项目跑起来再继续

3)再把 docker-compose.yml 和 .env 改写成 k8s,把项目跑起来

  • docker-compose.yml 拆分成 deployment、 service、job
  • .env 拆分成secret、configmap

4)继续优化,包括持久卷(pv/pvc)、ingress(https/nginx)、cronjob 等

开始

0)安装:kube/文档/0-docker-k8s-安装.md

1)rails 项目:kube/文档/1-rails-demo.md

2)使用 docker-compose 部署所有服务:kube/文档/2-docker-compose.md

3)使用 k8s 部署所有服务:kube/文档/3-k8s.md

4)部署 k8s dashboard 仪表盘:kube/文档/4-k8s-dashboard.md

5)kubectl 命令行代替 dashboard:kube/文档/5-k8s-命令行替代dashboard.md

6)加深对 k8s 的理解:kube/文档/6-视频-1天入门Kubernetes.md