• 一步步创建第一个Docker App —— 4. 部署应用



    在这一步中,将会使用第一步提到的 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 在网页上运行的结果。




  • 相关阅读:
    取近似值
    eclipse 自己主动为getter和setter加入中文凝视
    Linux对外连接port数限制
    C++链表冒泡,归并,插入排序(纯指针)
    Android之实现ViewPager+Fragment左右滑动
    获得鼠标离开消息。
    CMFCPropertyGridProperty的使用
    阅读书单
    Docker 容器管理
    docker rmi 详解
  • 原文地址:https://www.cnblogs.com/zhxshseu/p/adeff3c4abdf977faf4550333f449044.html
Copyright © 2020-2023  润新知