Docker 圖形化工具 Portainer ,值得推薦!

Laravel00發表於2021-12-13

文章來自: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 協議》,轉載必須註明作者和本文連結
溫馨提示:微信搜尋並關注   學Laravel  裡面有兩套Laravel課程:【laravel7.x 從入門到核心架構講解】 與 【Laravel高階實戰教程42集】,直接獲取就可以了

相關文章