`
wiselyman
  • 浏览: 2090143 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
博客专栏
Group-logo
点睛Spring4.1
浏览量:82067
74ae1471-94c5-3ae2-b227-779326b57435
点睛Spring MVC4...
浏览量:130599
社区版块
存档分类
最新评论

Docker Swarm及界面管理工具Portainer安装

 
阅读更多

Docker swarm是集群下docker容器编排工具,本文讲解了安装swarm的步骤和swarm界面管理工具Portainer的安装。

本文使用的操作是CentOS7;三台主机,一台作为管理节点,另外两台作为工作节点。

1.安装swarm

  • 编辑三台机器的/etc/hosts文件,内容修改为:
    192.168.1.130    manager.wisely.com   manager
    192.168.1.131    node1.wisely.com     node1
    192.168.1.132    node2.wisely.com     node2
    
  • 每台机器安装docker,顺序执行下面命令
    yum update -y
    yum install docker
    systemctl start docker
    systemctl enable docker
    
  • 每台机器开放下面防火墙端口,顺序执行下面命令:
    firewall-cmd --permanent --add-port=2376/tcp
    firewall-cmd --permanent --add-port=2377/tcp
    firewall-cmd --permanent --add-port=7946/tcp
    firewall-cmd --permanent --add-port=7946/udp
    firewall-cmd --permanent --add-port=4789/udp
    firewall-cmd --permanent --add-port=80/tcp
    firewall-cmd --reload
    systemctl restart docker
    
  • 在manager节点初始化集群:
    docker swarm init --advertise-addr 192.168.1.130
    

    执行后,得到下面结果:

    Swarm initialized: current node (b0389cuqtk1h2v5vhj3a3xurz) is now a manager.
    
    To add a worker to this swarm, run the following command:
    
      docker swarm join \
      --token SWMTKN-1-2xinda2i8kc8is6eob7hhyqyntxal1688ixzep2dqpmkyktnio-4xub9o40ilq326yi6b0hnjx9f \
      192.168.1.130:2377
    
    To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
    
  • 在另外两个工作节点执行:
    docker swarm join \
      --token SWMTKN-1-2xinda2i8kc8is6eob7hhyqyntxal1688ixzep2dqpmkyktnio-4xub9o40ilq326yi6b0hnjx9f \
      192.168.1.130:2377
    

    输出为:

    [root@localhost ~]# docker swarm join \
    >     --token SWMTKN-1-2xinda2i8kc8is6eob7hhyqyntxal1688ixzep2dqpmkyktnio-4xub9o40ilq326yi6b0hnjx9f \
    >     192.168.1.130:2377
    This node joined a swarm as a worker.
    
  • 执行docker node ls查看集群信息:
    ID                           HOSTNAME            STATUS  AVAILABILITY  MANAGER STATUS
    0bd7q219yihhkrlbj2prhlmxu    node1.wisely.com    Ready   Active        
    0qm0up69sjld7rwofso506oml    node2.wisely.com    Ready   Active        
    b0389cuqtk1h2v5vhj3a3xurz *  manager.wisely.com  Ready   Active        Leader
    
  • 使用阿里云docker镜像加速,按顺序执行,请去阿里云申请:
    sudo mkdir -p /etc/docker
    
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
    "registry-mirrors": ["https://*.mirror.aliyuncs.com"]
    }
    EOF
    
    sudo systemctl daemon-reload
    
    sudo systemctl restart docker
    
  • 部署测试,在管理节点执行:
    docker service create -p 80:80 --name webserver --replicas 5 httpd
    

    查看集群中的servicedocker service ls

    ID            NAME       REPLICAS  IMAGE  COMMAND
    7wk5kekwkyjd  webserver  5/5       httpd  
    

    查看集群中的webserver服务docker service ps webserver:

    ID                         NAME         IMAGE  NODE                DESIRED STATE  CURRENT STATE             ERROR
    5jq6c649y7kfdofhc8t4od7jc  webserver.1  httpd  node1.wisely.com    Running        Preparing 38 seconds ago  
    80ijfnq17p2h8dvipaabq3j4l  webserver.2  httpd  node1.wisely.com    Running        Preparing 38 seconds ago  
    94yrknng8y9e4h9l80ractm2r  webserver.3  httpd  manager.wisely.com  Running        Preparing 38 seconds ago  
    3ctowh4uctuh8q5u7lr930e9p  webserver.4  httpd  node2.wisely.com    Running        Preparing 38 seconds ago  
    du0eoe5nn9dpcvqik0z4m2ros  webserver.5  httpd  node2.wisely.com    Running        Preparing 38 seconds ago  
    

    访问http://192.168.1.130、http://192.168.1.131或http://192.168.1.132,结果为:

    1

2.安装Portainer

  • 首先关闭selinux,setenforce 0

  • 在manager节点执行:

    docker service create \
    --name portainer \
    --publish 9000:9000 \
    --constraint 'node.role == manager' \
    --mount type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock \
    portainer/portainer \
    -H unix:///var/run/docker.sock
    

  • 访问http://192.168.1.130:9000

    2

格式正常地址:http://www.wisely.top/2017/05/18/docker-swarm-portainer/

0
3
分享到:
评论

相关推荐

    docker swarm 20.10.17 + portainer-ce 2.14.2 + nginx 1.23.1 离线包

    在IT行业中,Docker Swarm、Portainer CE和Nginx是三个非常重要的工具,它们各自在容器编排、管理以及Web服务器领域发挥着关键作用。本文将深入探讨这些组件的功能、用途及其最新版本20.10.17、2.14.2和1.23.1的特点...

    Docker使用Portainer搭建可视化界面的方法

    Portainer是Docker的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、...

    Docker-学习总结(集群管理-Docker Stack+Portainer图形)

    文章目录Docker Stack概念命令Docker stack 实践实践环境实践过程部署一个简单服务添加监控visualizer滚动更新资源控制图形界面portainer安装前准备安装portainer Docker Stack 概念 技术由来:Docker Swarm在大规模...

    docker Portainer

    3. **多主机管理**:Portainer 可以管理多个 Docker 主机,包括 Swarm 集群,使得用户在一个界面下就能统一管理分布式环境。 4. **轻量级**:Portainer 自身是一个容器,非常小巧,启动快速,占用资源少,适合在...

    Docker搭建Portainer可视化界面步骤详解

    Portainer是Docker的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、...

    sigfox-platform:开源平台可通过Sigfox,GPS,WiFi和信标地理定位实时显示和解析Sigfox消息

    MongoDB 发布订阅和排队: RabbitMQ 部署方式反向代理: Traefik =&gt;一个不错的话题@devoxx,可以在这里了解Traefik 容器化: Docker 协调器: Docker Swarm 环境管理用户界面: Portainer 数据库备份(私有云存储)...

    IOTstack:用于在Raspberry PI上启动IOT的Docker堆栈

    【Portainer】是Docker容器的管理和监控工具,提供了一个直观的Web界面,使得用户可以轻松地管理Docker主机和Swarm集群。在IOTstack中,Portainer让Raspberry Pi上的Docker容器操作变得更加简单。 【Node-RED】是一...

    Docker进阶之快速扩容的方法

    1、命令方式 在创建好的Swarm集群中运行nginx服务,并使用–replicas参数指定启动的副本数。 docker service create --replicas 3...可以使用portainer的方式在web界面上创建服务并指定副本数,同时可以随时动态增减副

    一张图看懂微服务架构路线.docx

    - **推荐工具**:Kubernetes (K8s) 和 Docker Swarm 是目前最流行的两种选择。 ##### 2.3 Docker 容器管理 - **定义**:指用于管理 Docker 环境的工具,包括容器的创建、运行、监控等。 - **目的**:提供图形用户...

Global site tag (gtag.js) - Google Analytics