前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Rails 容器与配置(1)

Rails 容器与配置(1)

作者头像
franket
发布2021-10-20 09:48:15
4860
发布2021-10-20 09:48:15
举报
文章被收录于专栏:技术杂记

前言

Rails 是使用 Ruby 语言编写的网页程序开发框架

通过集成开发者需要的常用组件,极大的降低了网页程序的开发成本

前面几篇博客中使用 Rails 框架构建了一个具备基本认证功能的简单博客系统,详细可以参考:

当然,不了解也没关系,因为绝大部分开发的细节都不是运维需要关心的,运维更需要关心的是部署

传统的 Ruby on Rails 应用是使用 Capistrano 来进行自动化布署的,其实效率已经很高了,那有没有比它更高效的方式呢?

当然有,DockerDevOps 神器,将 Rails 应用 Docker 化后,我们可以更进一步降低布署的复杂度,负责发布的运维人员可以退化为 Docker(码头工人) 只需要将 箱子(应用) 搬到正确的地方就OK了,基本告别了发布过程中由于环境冲突而痛苦Debug的时代

运维人员的命运是很奇特的,自已发明的工具来革自己的命,自已编写的软件来跟自己抢饭碗,代替人力就是自动化工具的根本目标,毫无疑问,云时代的来临,大量运维人员将面临“失业”,因为高效平台工具的出现,使企业对运维的总体需求规模小了不止一个量级,或者说一个运维人员可以cover掉以前100(虚指,并无翔实数据源)个运维的产出,运维工种会更为细分,更为专精,但这并非悲观论调,而是进步的表现,总体趋势上来看人力资源节省了,所以聪明的运维会找准定位,适时调整

目前来讲,容器也比较适合运行无状态的服务,类似于web服务的应用层(app layer),因为这样可以很方便地进行水平扩展,系统的可扩展性,高弹性因此而变得很容易实现

这里分享一下 Docker 化一个 Rails 应用的操作过程和相关基础,详细可以参考 Docker hub 中的 Rails OFFICIAL REPOSITORY官方文档

Tip: 当前的 Docker 最新版本为 Docker Version 1.10 ,Rails 最新版本为 Rails 5.0.0.beta3 , Docker hub 中的 Rails 官方镜像最新版本为 Rails 4.2.6


概要


环境

代码语言:javascript
复制
[root@h104 ~]# hostnamectl 
   Static hostname: h104
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 12a02f8ee88d4b8e91d54d1390b0b275
           Boot ID: ac91120b8b4446f193e7cc3e25f278e4
    Virtualization: vmware
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 3.10.0-327.4.4.el7.x86_64
      Architecture: x86-64
[root@h104 ~]# uname -a 
Linux h104 3.10.0-327.4.4.el7.x86_64 #1 SMP Tue Jan 5 16:07:00 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@h104 ~]# docker --version
Docker version 1.9.1, build a34a1d5
[root@h104 ~]#

拉取官方镜像

这个过程很漫长,可以准备点视频或瓜子什么的,实在无聊也可以翻翻我的其它博客 (^ ^)

代码语言:javascript
复制
[root@h104 ~]# docker pull rails 
Using default tag: latest
latest: Pulling from library/rails
004814f54a9a: Pull complete 
4786bcc15aac: Pull complete 
b6b57a59043e: Pull complete 
783fdfa6305f: Pull complete 
298958ea032a: Pull complete 
ae0c9441f5a3: Pull complete 
15f206b10e55: Pull complete 
6529e7d7f485: Pull complete 
b0ad7658b188: Pull complete 
b9cc583df59a: Pull complete 
9163bcf48f72: Pull complete 
b0e3fc140041: Pull complete 
57c77d269392: Pull complete 
533d0a2f687a: Pull complete 
ffe115a2f981: Pull complete 
8cda06d14823: Pull complete 
5b3b2ad1e099: Pull complete 
342ff98b0e82: Pull complete 
fc2eabed675c: Pull complete 
afdddae9b2bf: Pull complete 
Digest: sha256:a9c33d16edd9a3819f1ff9662615bef97b3c77d40773c3e7298c856f796cf3d8
Status: Downloaded newer image for rails:latest
[root@h104 ~]#

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 概要
    • 环境
      • 拉取官方镜像
      相关产品与服务
      容器镜像服务
      容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档