通过 Dockerfile 部署容器应用

入门指南

准备工作

首先,我们从 github 上 clone 一个 Docker 应用示例代码。

$ git clone https://github.com/sinacloud/docker-getting-started.git
$ cd docker-getting-started
$ ls
Dockerfile  README.md

这份示例代码是基于 alpine 镜像 制作一个运行 python SimpleHTTPServer 的 docker 镜像。

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

../../_images/docker-getting-started-create-dockerfile.png

根据您的应用需求,选择你想要的规格的容器。点击创建,创建一个新的容器应用。

部署应用

应用创建完后,会显示你的应用的 git 仓库地址以及如何将代码提交到该 git 仓库,按照说明提交代码。

$ 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 来访问我们的应用了。

容器管理

在应用页面的左侧导航栏选择『容器管理』,在这个页面可以管理您刚才部署的容器实例,同时也可以查询容器的实时运行状态。

../../_images/docker-getting-started-container-management.png

构建和运行说明

如何识别应用是容器应用?

容器云通过应用根目录下的 Dockerfile 文件来判断一个应用是否是 Docker 应用,其构建过程就是标准的 docker build 过程,产生的镜像与您在本地执行 docker build 命令产生的镜像相同。