在这一步中,将会使用第一步提到的 docker-stack.yml 文件来部署 voting 应用,到我们之前创建的集群swarm中。


复制 docker-stack.yml 到 manager 虚拟机

docker-stack.yml 文件必须在 manager machine 中装载。

1. 从 source code in the lab 中获得源码,或者从 here 获得。
亦可以使用 curl 从 github 上直接下载到当前目录。在powershell中直接运行该命令:
curl -o docker-stack.yml https://raw.githubusercontent.com/docker/example-voting-app/master/docker-stack.yml
当在桌面目录下执行,则会在桌面上看到该文件:docker-stack.yml

2. 将 docker-stack.yml 文件,从PC主机,复制到 manager 虚拟机中。
不知为何这一步一直报错:“You must have a copy of the scp binary locally to use the scp feature”。所以这里大家可以ssh登录manager,然后使用 1 中的命令,直接下载到 manager 主机上。

3. ssh登录 manager 虚拟机
默认会登录到目录 /home/docker 下

4. 确定docker-stack.yml文件已经在目录下

部署 app

我们接下来会从 manager 部署我们的应用。

1. 依据 .yml 文件部署 application stack,使用如下命令:
docker stack deploy --compose-file docker-stack.yml vote
下面是命令的输出:
1
2
3
4
5
6
7
8
9
10
docker@manager:~$ docker stack deploy --compose-file docker-stack.yml vote
Creating network vote_frontend
Creating network vote_backend
Creating network vote_default
Creating service vote_vote
Creating service vote_result
Creating service vote_worker
Creating service vote_visualizer
Creating service vote_redis
Creating service vote_db

2. 验证部署结果: docker stack services <APP-NAME>.
docker@manager:~$ docker service ls
ID            NAME             MODE        REPLICAS  IMAGE
9lmy35ux8t3x  vote_vote        replicated  2/2       dockersamples/examplevotingapp_vote:before
dwurzjl7qa9a  vote_db          replicated  1/1       postgres:9.4
e1nx3l63tgtm  vote_worker      replicated  0/1       dockersamples/examplevotingapp_worker:latest
t45lssaky8we  vote_visualizer  replicated  0/1       dockersamples/visualizer:stable
tph5wfiatiqy  vote_redis       replicated  2/2       redis:alpine
z0v7nm0dokqp  vote_result      replicated  0/1       dockersamples/examplevotingapp_result:before


数字 0 表示该 image 还没有下载复制,并没有运行
可使用命令 docker images 查看已经有的 镜像。

What’s next?

下一步,我们将要看到 app 在网页上运行的结果。

一步步创建第一个Docker App —— 4. 部署应用的更多相关文章

  1. 一步步创建第一个Docker App —— 1. 背景介绍

    原文:https://docs.docker.com/engine/getstarted-voting-app/#/docker-stacks-and-services 你将会学习什么    本文创建 ...

  2. 一步步创建第一个Docker App —— 2. 创建 Docker化 主机

    原文:https://docs.docker.com/engine/getstarted-voting-app/node-setup/ 部署voting app的第一步,是为集群节点(swarm no ...

  3. 一步步创建第一个Docker App —— 3. 创建一个集群Swarm

    原文:https://docs.docker.com/engine/getstarted-voting-app/create-swarm/ 初始化集群 Swarm 1. 使用 ssh 命令登录 man ...

  4. django学习笔记【002】创建第一个django app

    2.3.3 1.创建一个名叫polls的app python3. manage.py startapp polls tree mysite/ mysite/ ├── db.sqlite3 ├── ma ...

  5. Cordova - Windows 下创建第一个 Android App

    官方文档: Create your first Cordova app Android Platform Guide 安装 JDK 和 Android SDK 注意: 需要将 JK 和 Android ...

  6. 一步步创建第一个Vue项目

    写在了GitHub https://github.com/TaoPanfeng/vue-cms 1 初始化 创建一个文件夹 vue-cms 在vue-cms目录下创建文件 package.json 在 ...

  7. NodeJS笔记(五) 使用React Native 创建第一个 Android APP

    参考:原文地址 几个月前官方推出了快速创建工具包,由于对React Native不熟悉这里直接使用这2个工具包进行创建 1. create-react-native-app(下文简称CRNA): 2. ...

  8. Docker - 创建第一个 docker 实例

    1. 概述 安装完准备开始使用 2. 环境 os centos 7 docker docker - ce 19.03 3. 步骤 启动docker > systemctl start docke ...

  9. 编写第一个Flutter App(翻译)

    博客搬迁至http://blog.wangjiegulu.com RSS订阅:http://blog.wangjiegulu.com/feed.xml 以下代码 Github 地址:https://g ...

随机推荐

  1. 20155327 EXP8 Web基础

    20155320 EXP8 Web基础 基础问题回答 什么是表单? 表单:可以收集用户的信息和反馈意见,是网站管理者与浏览者之间沟通的桥梁. 表单由文本域.复选框.单选框.菜单.文件地址域.按钮等表单 ...

  2. 20155330 《网络攻防》Exp1 PC平台逆向破解(5)M

    20155330 <网络攻防>Exp1 PC平台逆向破解(5)M 实践目标 运行pwn1可执行文件中的getshell函数,学习如何注入运行任何Shellcode 本次实践的对象是一个名为 ...

  3. 20155331《网路对抗》Exp8 WEB基础实践

    20155331<网路对抗>Exp8 WEB基础实践 基础问题回答 什么是表单 表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签,这里面包含了处理表单数据所用CGI ...

  4. Luogu P1120 小木棍 [数据加强版]

    看了题目心中只有一个字——搜索!!! 但是很显然,朴素的搜索(回溯)绝壁超时. 剪枝&优化(要搞很多,要不然过不了) 1:从小到大搜索它们的因数,这样找到就exit. 2:将数据从大到小排序, ...

  5. [Oracle]OpenVMS 运行 Oracle 时的推荐值

    PQL Parameters            ORACLE Account  ------------------        -------------------------  PQL_M ...

  6. 汇编 REPNE/REPNZ 指令,SCASB 指令

    知识点: REPNE/REPNZ 指令 SCASB 指令 一.SCASB 指令 cmp byte ptr [edi],al //对标志位的影响相当于sub指令 //同时还会修改寄存器EDI的值:如 ...

  7. ScreenToGif 代码分析

    ScreenToGif项目由四个文件夹组成: Files 存放协议文件 GifRecorder 存放gif编码器代码 ScreenToGif 存放主代码 Other 存放Hooktest和Transl ...

  8. linux下的yum命令详细介绍

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  9. dubbo见解

    调用关系说明 服务容器负责启动,加载,运行服务提供者. 服务提供者在启动时,向注册中心注册自己提供的服务. 服务消费者在启动时,向注册中心订阅自己所需的服务. 注册中心返回服务提供者地址列表给消费者, ...

  10. allegro 封装 (引脚编号修改)

    1. 打开dra文件在find里面 off all  然后只点击text 2.点击需要更改的焊盘 3.菜单栏edit - text 4.弹出窗口修改即可