Docker 图形化工具 Portainer ,值得推荐!

文章来自:PHP开源社区

Portainer 是 Docker 的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm 集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足个人用户对容器管理的全部需求。

图片

更多的情况下,我们会使用 Docker 集群,里面可能有几台机器,也可能有几十台机器。因此,进行集群管理也是十分重要了,当然,我们的 Portainer 也支持集群管理的,可以和 Swarm 一起使用。

图片

Portainer 服务启动

一入 Docker 终难回,方知启动如此简单!

单机版安装
# 创建存储卷
$ docker volume create portainer_data

# 启动服务
$ docker run -d -p 80:9000 \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v portainer_data:/data \
    portainer/portainer
集群版安装
# 创建存储卷
$ docker volume create portainer_data

# 启动服务
$ docker service create \
    --name portainer \
    --publish 80:9000 \
    --replicas=1 \
    --constraint 'node.role == manager' \
    --mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock \
    --mount type=volume,src=portainer_data,dst=/data \
    portainer/portainer \
    -H unix:///var/run/docker.sock
自定义 docker-compose 安装
version: "3.2"
services:
  portainer:
    image: portainer/portainer
    command: -H unix:///var/run/docker.sock
    restart: always
    ports:
      - 80:9000
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - portainer_data:/data
volumes:
  portainer_data:
官网 docker-compose 安装 - 实例地址
version: "2"

services:
  nginx-proxy:
    image: jwilder/nginx-proxy
    restart: always
    networks:
      - proxy
    ports:
      - "80:80"
    volumes:
      - "/var/run/docker.sock:/tmp/docker.sock:ro"
      - "./vhost.d:/etc/nginx/vhost.d:ro"

  portainer:
    image: portainer/portainer
    restart: always
    environment:
      - VIRTUAL_HOST=dev.portainer
    networks:
      - proxy
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - portainer_data:/data

networks:
  proxy:

volumes:
  portainer_data:
官网部署集群方式 - 实例地址
# 集群也可以使用如下正统方式安装部署
$ docker stack deploy --compose-file=docker-stack.yml portainer
bash
version: '3.2'

services:
  agent:
    image: portainer/agent
    environment:
      # REQUIRED: Should be equal to the service name prefixed by "tasks." when
      # deployed inside an overlay network
      AGENT_CLUSTER_ADDR: tasks.agent
      # AGENT_PORT: 9001
      # LOG_LEVEL: debug
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /var/lib/docker/volumes:/var/lib/docker/volumes
    networks:
      - agent_network
    deploy:
      mode: global
      placement:
        constraints: [node.platform.os == linux]

  portainer:
    image: portainer/portainer
    command: -H tcp://tasks.agent:9001 --tlsskipverify
    ports:
      - "9000:9000"
      - "8000:8000"
    volumes:
      - portainer_data:/data
    networks:
      - agent_network
    deploy:
      mode: replicated
      replicas: 1
      placement:
        constraints: [node.role == manager]

networks:
  agent_network:
    driver: overlay

volumes:
  portainer_data:

Portainer 安装步骤

使用之前,需要我们一步一步的安装!

首次登陆需要注册用户,给 admin 用户设置密码。

图片

单机版: 选择 Local 选项,即可连接到本地 Docker 服务。

图片

如果是集群方式启动的,建议将 Portainer 服务安装启动在 Swarm 的管理节点上,并且首次设置 Endpoint URL 时设置管理节点的 URL。

集群版: 选择 Remote 选项,下面输入一个名称和对应接入地址。其中名称(Name)可以自行定义,而接入地址(Endpoint URL)是 Swarm 集群中设置的节点 URL 地址,比如 IP 是 10.0.100.150,监听的端口是默认的 2375。

填写完毕点击 Connect 即可进入管理页面,在管理页面左上角会显示管理的集群节点列表。想要查看那个节点的信息,则点击对应节点即可进入管理界面了。

图片

Portainer 效果图

不使用的话,你永远都不知道我有多美!

图片

图片

图片

图片

本作品采用《CC 协议》,转载必须注明作者和本文链接
程序员的福利:免费获取 JetBrains 全家桶激活码 推荐:【点击这里获取 。。。激活码适用:AppCode, CLion, DataGrip, DataSpell, dotCover, dotMemory, dotTrace, goland, IntelliJ IDEA Ultimate, phpstorm, pycharm, ReSharper
Laravel00
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
资深程序猿 @ XX科技
文章
62
粉丝
37
喜欢
249
收藏
571
排名:284
访问:3.3 万
私信
所有博文
社区赞助商