通过 Dockerfile 部署容器应用 ############################### 入门指南 =========== 准备工作 ----------- 首先,我们从 github 上 clone 一个 Docker 应用示例代码。 .. code-block:: console $ git clone https://github.com/sinacloud/docker-getting-started.git $ cd docker-getting-started $ ls Dockerfile README.md 这份示例代码是基于 `alpine 镜像 `_ 制作一个运行 python SimpleHTTPServer 的 docker 镜像。 .. code-block:: console FROM alpine:latest RUN apk add --update python CMD ["/usr/bin/python", "-m", "SimpleHTTPServer", "5050"] Dockerfile 的语法可以参考官方文档:https://docs.docker.com/engine/reference/builder/ 创建应用 --------- 登录『新浪云控制台』,点击『创建新应用』,运行环境选择『自定义/云容器/Dockerfile』,应用名为 *helloworld* 。 .. image:: /images/docker-getting-started-create-dockerfile.png 根据您的应用需求,选择你想要的规格的容器。点击创建,创建一个新的容器应用。 部署应用 -------------------------- 应用创建完后,会显示你的应用的 git 仓库地址以及如何将代码提交到该 git 仓库,按照说明提交代码。 .. code-block:: console $ git remote add sinacloud https://git.sinacloud.com/helloworld $ git push sinacloud master ... remote: Exporting git code... remote: Uploading... -----> Xxx app detected -----> Creating runtime environment ... remote: Deploy and waiting for app to be ready ..... To https://git.sinacloud.com/ymp9vm2385 + 74d7d50...470cb46 master -> master 部署的时候,git 会显示当前的进度,如果部署失败,会提示相应的错误信息(比如 package.json 格式问题等)。 部署完成后,我们就可以通过 http://helloworld.applinzi.com 来访问我们的应用了。 容器管理 ------------ 在应用页面的左侧导航栏选择『容器管理』,在这个页面可以管理您刚才部署的容器实例,同时也可以查询容器的实时运行状态。 .. image:: ./images/docker-getting-started-container-management.png 构建和运行说明 ================= 如何识别应用是容器应用? ------------------------ 容器云通过应用根目录下的 ``Dockerfile`` 文件来判断一个应用是否是 Docker 应用,其构建过程就是标准的 docker build 过程,产生的镜像与您在本地执行 docker build 命令产生的镜像相同。