:::info 视频演示 https://www.bilibili.com/video/BV1Rv411M7Jm/ :::

portainer.png单机运行

  1. version: "3.7"
  2. services:
  3. pt:
  4. image: portainer/portainer-ce
  5. container_name: pt
  6. restart: always
  7. privileged: true
  8. environment:
  9. TZ: "Asia/Shanghai"
  10. ports:
  11. - "9000:9000"
  12. volumes:
  13. - ./data:/data

添加自定义镜像库

image.png

远程管理其他 docker

被管理端配置

方式一(推荐)

  1. 修改 docker.service

    vi /usr/lib/systemd/system/docker.service

在 ExecStart=/usr/bin/dockerd -H fd:// —containerd=/run/containerd/containerd.sock 后添加 -H unix:///var/run/docker.sock -H 0.0.0.0:2375
-H unix:///var/run/docker.sock 开启一个对外主机服务,使用 docker.sock 文件管理。
-H 0.0.0.0:2375 : 允许客户端 IP 访问当前服务,2375是自定义的端口。

  1. 重启 docker 服务
    1. systemctl daemon-reload && systemctl restart docker

    方式二

  • vi /etc/docker/daemon.json

    1. {
    2. "hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"]
    3. }
  • 重启 docker 服务

    1. systemctl restart docker

    添加远程管理

    image.png

    镜像管理

    image.png

    创建网络

    避免生成的docker网段与局域网其他网络冲突

image.png

容器创建

创建

image.png

选择镜像

simple mode

image.png

Advanced mode

image.png

外挂路径

image.png

环境变量

image.png

运行时限制

image.png

Stacks 部署 docker-compose.yml

如果部署失败,会出现 limit 导致无法修改。需要删除后调整。

容器的备份与恢复

image.png

api

官方说明

golang 接口封装

说明

| POST | > /resource_controls

| > Create a new resource control

| | —- | —- | —- | | PUT | > /resource_controls/{id}

| > Update a resource control

| | DELETE | > /resource_controls/{id}

| > Remove a resource control

|

auth

  1. curl -X POST -H "Content-Type:application/json" -u "admin:kingisgod." http://172.19.129.98:9999/api/auth -d'{"password":"kingisgod.", "username": "admin"}'
  2. {"jwt":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwidXNlcm5hbWUiOiJhZG1pbiIsInJvbGUiOjEsImV4cCI6MTY2MDYzNzM4MX0.139oVYq3_xZUe37TvsxSCnN_safRLtWK1FOXXa-nFP0"}

users

  1. curl -X GET -H "Content-Type:application/json" -H "Authorization:Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwidXNlcm5hbWUiOiJhZG1pbiIsInJvbGUiOjEsImV4cCI6MTY2MDYzNzM4MX0.139oVYq3_xZUe37TvsxSCnN_safRLtWK1FOXXa-nFP0" -u "admin:kingisgod." http://172.19.129.98:9999/api/users
  2. [{"Id":1,"Username":"admin","Role":1,"PortainerAuthorizations":null,"EndpointAuthorizations":null}]

docker 管理

https://gist.github.com/deviantony/77026d402366b4b43fa5918d41bc42f8