其他分享
首页 > 其他分享> > 私有化轻量级持续集成部署方案--01-环境配置(下)

私有化轻量级持续集成部署方案--01-环境配置(下)

作者:互联网

提示:本系列笔记全部存在于 Github, 可以直接在 Github 查看全部笔记

Portainer

Portainer 概述

Portainer 是一个 Docker 可视化管理工具,为 Docker 提供状态提示面板、快速配置部署、数据卷管理等各种功能,基本上能满足中小型容器管理的需求。
我也感觉 Portainer 使用起来非常方便

Portainer 版本

Portainer 社区版目前具有两个镜像。portainer/portainerportainer/portainer-ce

portainer/portainer

portainer/portainer1.X版本(老版本)镜像。官方现在已弃用此镜像。

不过目前网上教程都是以此镜像为准。我刚开始也没注意,结果被坑到了。

此镜像版本对非 SWARM云连接的 Docker Compose 语法版本只支持到 2.X,并且创建具名Volume 挂载目录时有问题(我就被这个坑到了)。

portainer/portainer-ce

portainer/portainer-ce2.X 版本的新镜像。

完全支持 Docker Compose 3.X 语法版本。

Portainer 部署

在此 Portainer 通过 Docker Compose 进行部署。
Docker Compose可观性较强,并且配置文件可以保存 以后的所有部署方案都采用这种形式。

version: '3.9'

services:
  portainer:
    image: portainer/portainer-ce
    container_name: portainer
    restart: always
    ports:
      - 9000:9000
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /volumes/portainer:/data

以上是部署 PortainerYAML格式配置文件

PS: 注意: Volume 挂载目录和文件时,有两种情况。目录:宿主机中可以不存在此目录,Docker 在启动容器时会自动创建目录。 文件:当挂载路径为文件时,宿主机中必须存在此文件

配置属性中还可以设置好多参数,例如:environment,之后会使用使用,不再介绍。

/var/run/docker.sock 是一个特殊的文件,有些容器需要提供此文件。

文件编写完成后上传服务器执行

docker-compose -f /yml/docker-compose/portainer.yml -p portainer up -d

成功运行后,会自动启动容器。

并且在挂载的目下可以看到容器中的的数据

此时就可以使用访问 Portainer 页面。

注意:如果是云主机,需要启动 9000 端口访问策略,否则无法访问。

Portainer 第一次访问会跳转到设置管理员用户页面

设置完成之后,如果本地具有 Docker , 会默认连接到本地 Docker

Portainer 页面

进入主页面后,第一个就是自动连接的本地 Docker , 点击可以看到 Docker 各种信息

Stack 模块

Stack 是用来管理 Docker Compose,目前只有一个,也就是部署的 Portainer

Limited

未使用 Portainer可视化工具部署的 Docker Compose, 在 Portainer可视化工具内部是不允许操作的。

例如 Portainer, 在 Portainer可视化工具中 Control 属性显示为 Limited, 意思就是不允许操作这个 stack

Add Stack

点击 Add Stack 按钮就可以进行添加 Docker ComposePortainer 支持四种方式添加;

  1. Web editor(直接在当前页编写配置)
  2. Upload(提供本地上传 xxx.yml 文件)
  3. Repository(提供一个配置文件的 URL 地址)
  4. Custom template 自定义模板 (2.X 版本新添加的,我也没了解)

个人比较喜欢使用 Upload 在本地使用编辑器编写完成之后上传。当然也可以使用其它方式。看使用场景和个人喜好。

Portainer API 连接方式

Portainer 支持多种连接方式。 介绍一种使用 Docker API 连接方式

API 连接方式是使用 TCP 协议访问的 Docker API 进行通信,需要设置 Docker API,允许 Docker 被访问

Docker API 需要设置 /lib/systemd/system/docker.service 文件 ExecStart 属性

在此设置只允许内网访问 ,其实只允许本地 IP 访问(模拟远程连接方式)

PS:注意:设置连接主机根据实际情况设置,千万不要设置为 tcp://0.0.0.0:2375,这样极大可能会中病毒,亲测中过挖矿脚本病毒。

设置完成后需要重启 Docker 服务

sudo systemctl daemon-reload
sudo systemctl restart docker

现在 Portainer 就可以使用 API 连接方式

标签:容器,01,--,portainer,Portainer,镜像,Docker,docker,轻量级
来源: https://www.cnblogs.com/yan7/p/15811203.html