201601上海云栖大会Workshop - 通过容器服务一分钟创建Wordpress博客

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 通过容器服务一分钟创建WordPress博客 1. 熟悉Docker的基本知识和容器服务的基本功能 2. 在容器服务中成功通过一个编排模板创建WordPress博客

通过容器服务一分钟创建WordPress博客

目标

  1. 熟悉Docker的基本知识和容器服务的基本功能
  2. 在容器服务中成功通过一个编排模板创建WordPress博客

准备工作

步骤

  1. 进入容器服务控制台
  2. 创建第一个集群
  3. 搜索并查看WordPress镜像
  4. 选择模板创建应用

以下是具体的操作步骤

1.进入容器服务控制台

1.1 进入容器服务产品介绍页面

在阿里云首页www.aliyun.com的导航"产品"下浮列表中,选择"弹性计算"分类下的"容器服务(公测中)",如下图:

screenshot

点击后进入产品介绍页面:

screenshot

1.2 申请公测

点击"获取使用资格"(首次进入需要申请公测资格)或者直接进入"管理控制台"

screenshot

1.3 查看指南

进入容器服务的控制台。点击左侧的"指南",进入介绍页面,了解容器服务的基本概念.

screenshot

如有有更详细的了解,可以查看页面最下方的文档及帮助

2. 创建第一个集群

2.1 进入创建集群页面

点击上图中的"创建集群"链接

screenshot

2.2 设置集群配置

填写集群名称:yunqi-test2

选择地域(杭州)和可用区(杭州可用区D)

选择操作系统:Ubuntu 14.04 64 位

选择网络类型:经典网络

容器服务为每个集群会默认创建一个按量计费的公网SLB,用于外部访问。

容器服务创建的云服务器和负载均衡目前均为按量计费。

2.3 设置实例配置

screenshot

选择实例规格:2核4GB(ecs.s2.large)

选择实例数量:1

选择数据盘容量:20G (会被挂载到/var/lib/docker目录,用于Docker镜像和容器的存储。)

设置云服务器密码

2.4 创建集群并查看日志

点击"创建集群"按钮,自动跳转到集群列表页面,集群的状态显示"初始化中"。

点击"查看日志",查看创建集群的过程日志

screenshot

等待集群状态变化为"运行中"

ps:如果集群创建失败,有可能是当前选择的地域和可用区没有库存,请换可用区或云服务器规格尝试。

2.5 查看节点信息

点击集群名称,展开节点列表信息

screenshot

点击ip地址(120.55.183.83)的链接,进入节点页面

screenshot

这个页面描述了当前节点下的容器列表,其中带"system"标签的容器代表是容器服务的系统容器,用来管理每台云服务器:

acs-agent:用于管理docker daemon

tunnel-agent:用于管理容器服务和云服务器的通信

acsrouting_routing:用于管理路由转发

点击左侧的节点监控,查看监控信息

screenshot

3. 搜索并查看WordPress镜像

3.1 浏览镜像列表

点击左侧菜单"镜像和模板"里的"镜像",如下图

screenshot

常用镜像:是容器服务挑选的一些最常用的镜像列表

Docker官方镜像:是容器服务从Docker Hub同步过来的Docker官方镜像列表

阿里云镜像:是阿里云提供的容器Hub的镜像列表,按照下载量排序

3.2 搜索一个镜像

在右上角的搜索框,搜索wordpress

screenshot

3.3 查看镜像详情

点击acs-sample/wordpress镜像的"详情"链接,跳转到阿里云容器hub的镜像详情页面

screenshot

右侧的"版本信息"展示了该镜像的tag列表

这里介绍下镜像的几个概念:

screenshot

3.4 查看镜像对应的dockerfile

点击tag:yunqi旁的dockerfile链接,进入github页面:

screenshot

后续的实例编排模板会使用这个镜像。这里介绍下dockerfile的几个相关语法:

    FROM wordpress                      
    #基础镜像
    RUN echo Asia/Shanghai > /etc/timezone && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    COPY entry.sh /entry.sh            
    RUN chmod a+x /entry.sh
    COPY  aliyun-oss-support-2.3.2/  /var/www/html/wp-content/plugins/aliyun-oss-support-2.3.2/
    #复制外部文件到镜像里面。这里是复制oss的plugin。          
    ENTRYPOINT ["/entry.sh"]               
    #入口脚本
    CMD ["apache2-foreground"]              
    #启动参数

4 选择模板创建应用

4.1 选择示例编排模板

点击控制台左侧导航的"镜像与模板"的"编排模板"

screenshot

"示例编排"下有容器服务推荐的一些编排模板

"我的编排"管理了用户自己创建的编排模板

选择示例模板yunqi_wordpress(后续会选择这个模板创建,也可以按照自己的需求修改),点击"详情"查看

screenshot

4.2 编排模板语法讲解

编排模板是遵循docker compose的yml格式.

上面的模板描述了3个服务,分别是wordpress、mysql和logtail。 (后续会将logtail作为系统容器提供,敬请期待。)

这里对compose的语法简单讲解:

    wordpress:
        image: registry.aliyuncs.com/acs-sample/wordpress:yunqi   
        #代表这个服务的镜像
        ports:                                                    
            - 80
            #代表容器会暴露80端口
        volumes:
            - /acs/log/wordpress/:/var/log/                       
           #这里将容器内的目录/var/log/,映射到宿主机的/acs/log/wordpress/目录。(可供日志服务去采集)
        labels:                                                   
        #docker的标准能力  容器服务也提供了一些增值的能力(以aliyun开头的标签)
            aliyun.routing.port_80: wordpress                     
            #代表提供了路由能力,前端的域名是wordpress.<cluster_id>.<region_id>.alicontainer.com,并绑定到容器的端口8080
            aliyun.probe.url: 'http://container/license.txt'      
            #代表了该镜像起来后的健康型检查URL是容器的内部地址:http://localhost/license.txt
            aliyun.probe.initial_delay_seconds: '5'               
            #代表了在容器启动后延迟几秒开始健康检查
            aliyun.scale: '1'                                     
            #代表了该镜像需要启动1个容器
            aliyun.depends: logtail                               
            #代表这个容器会等logtail启动之后再启动
            aliyun.latest_image: true                             
            #代表会拉取最新的镜像(对于tag不变而内容变化的镜像)
        restart: always                                           
        #代表容器挂了会自动重启
        links:                                                   
            - mysql
            #代表wordpress这个服务会连接到mysql,可以通过环境变量mysql.MYSQL_ROOT_PASSWORD获取密码
    mysql:
        image: mysql
        ports:
            - 80
        labels:
            aliyun.scale: "1"
        environment:
            - MYSQL_ROOT_PASSWORD=password         

更详细的解释请参见:https://help.aliyun.com/document_detail/containerservice/compose/summary.html

4.3 创建应用

点击右上角"创建应用"按钮

screenshot

默认应用名为:yunqi_wordpress-application-default(可修改)

设置应用版本:1.0 (可自定义)

选择部署集群:yuqi-test2

点击"创建并部署应用",自动跳转到"应用列表"页面:
screenshot

当前应用正在创建中,可查看应用的事件直至应用状态至"就绪"

ps:容器服务的应用对应一个compose编排模板,可包含一个或多个服务。(在yunqi-wordpress示例模板中,我们创建的这个应用包含了三个服务,每个服务对应一个镜像)

4.4 查看应用状态

在应用列表里点击"yunqi_wordpress-application-default"的链接,进入该应用的详情页。

screenshot

点击服务列表,选择服务"wordpress",进入服务的详情页:

screenshot

4.5 查看WordPress应用

点击上图的访问端点的地址,即可访问wordpress的页面:

screenshot

选择语言:简体中文,点击继续
screenshot

设置用户名、密码和邮箱,点击"安装WordPress",后续再登录即安装成功!

相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
1月前
|
关系型数据库 MySQL Apache
怎么在树莓派上搭建WordPress博客网站,并发布到外网可访问?
怎么在树莓派上搭建WordPress博客网站,并发布到外网可访问?
|
6月前
|
Linux Docker 容器
用Docker-Compose一分钟搭建Wordpress博客系统
用Docker-Compose一分钟搭建Wordpress博客系统
116 0
用Docker-Compose一分钟搭建Wordpress博客系统
|
5月前
|
NoSQL 安全 PHP
手把手教你搭建WordPress博客网站并发布至公网(上
手把手教你搭建WordPress博客网站并发布至公网
160 0
|
6月前
|
域名解析 网络协议
如何为树莓派上的WordPress博客网站配置自己的域名,并且外网可访问?
如何为树莓派上的WordPress博客网站配置自己的域名,并且外网可访问?
|
3月前
|
弹性计算 关系型数据库 MySQL
带你读《弹性计算技术指导及场景应用》——2. 免费试用ECS,轻松搭建WordPress博客平台使用
带你读《弹性计算技术指导及场景应用》——2. 免费试用ECS,轻松搭建WordPress博客平台使用
182 0
|
3月前
|
前端开发
wordpress博客趣主题个人静态网页模板
博客趣wordpress页面模板适合个人博客,个人模板等内容分享。
85 0
|
8月前
|
NoSQL 安全 PHP
如何搭建WordPress博客网站,并且发布至公网上?
如何搭建WordPress博客网站,并且发布至公网上?
|
4月前
|
API 数据安全/隐私保护 Python
随手写了个博客多平台发布脚本:Python自动发布文章到Wordpress
作为一名技术博主,提高博客发布效率是我们始终追求的目标。在这篇文章中,我将分享一个基于Python的脚本,能够实现博客多平台发布,具体来说,是自动发布文章到WordPress。通过这个简单而高效的脚本,我们能够省去繁琐的手动发布步骤,提升工作效率。
随手写了个博客多平台发布脚本:Python自动发布文章到Wordpress
|
5月前
|
网络安全 数据库 数据安全/隐私保护
手把手教你搭建WordPress博客网站并发布至公网(下)
手把手教你搭建WordPress博客网站并发布至公网
80 0
|
7月前
|
弹性计算 安全 JavaScript
基于函数计算快速搭建Wordpress博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Wordpress博客。
142 0

相关产品

  • 容器计算服务