【Docker管理工具】使用Docker部署portainer-ce管理工具

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 【7月更文挑战第22天】使用Docker部署portainer-ce管理工具

@TOC

一、portainer-ce介绍

1.portainer简介

Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。 而且完全免费,基于容器化的安装方式,方便高效部署。

2.portainer-ce简介

Portainer Community Edition是一个用于容器化应用程序的轻量级服务交付平台,可用于管理 Docker、Swarm、Kubernetes 和 ACI 环境。它被设计为易于部署和使用。该应用程序允许您通过“智能”GUI 和/或广泛的 API 管理所有编排器资源(容器、图像、卷、网络等)。

3.portainer-ce容器镜像说明

1.在dockerhub中,portainer/portainer容器镜像已弃用。
2.从 2022 年 1 月开始,portainer的最新标签将指向 Portainer CE 2.X。请改用 portainer/portainer-ce容器镜像。

二、检查本地docker环境

1.检查系统版本

检查本地操作系统版本

[root@docker ~]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core)

2.检查docker版本

检查本地宿主机docker版本

[root@docker ~]# docker version
Client: Docker Engine - Community
 Version:           20.10.22
 API version:       1.41
 Go version:        go1.18.9
 Git commit:        3a2c30b
 Built:             Thu Dec 15 22:30:24 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.22
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.18.9
  Git commit:       42c8b31
  Built:            Thu Dec 15 22:28:33 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.14
  GitCommit:        9ba4b250366a5ddde94bb7c9d1def331423aa323
 runc:
  Version:          1.1.4
  GitCommit:        v1.1.4-0-g5fd4c4d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

3.检查docker状态

[root@docker ~]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2023-03-17 14:49:34 CST; 1 day 1h ago
     Docs: https://docs.docker.com
 Main PID: 5930 (dockerd)
    Tasks: 26
   Memory: 126.9M
   CGroup: /system.slice/docker.service
           ├─5930 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

三、下载portainer-ce镜像

从dockerhub中拉取ortainer-ce镜像,这里选择版本是latest版本。

[root@docker ~]# docker pull portainer/portainer-ce:latest
latest: Pulling from portainer/portainer-ce
0ea73420e2bb: Pull complete 
c367f59be2e1: Pull complete 
b71b88d796e2: Pull complete 
Digest: sha256:4f126c5114b63e9d1bceb4b368944d14323329a9a0d4e7bb7eb53c9b7435d498
Status: Downloaded newer image for portainer/portainer-ce:latest
docker.io/portainer/portainer-ce:latest

四、部署portainer-ce

1.创建数据卷

创建portainer-ce的数据卷

[root@docker ~]# docker volume create portainer_data
portainer_data

2.创建portainer-ce容器

dockerd的cli命令直接创建portainer-ce容器

docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
-d #容器在后台运行
-p 9000:9000# 宿主机9000端口映射容器中的9000端口
-v /var/run/docker.sock:/var/run/docker.sock # 把宿主机的Docker守护进程(docker daemon)默认监听的Unix域套接字挂载到容器中
-v /root/portainer:/data # 把宿主机目录 /root/portainer 挂载到容器 /data 目录;
–name dev-portainer # 指定运行容器的名称;

image.png

3.检查portainer-ce容器状态

检查portainer-ce容器状态

[root@docker ~]# docker ps
CONTAINER ID   IMAGE                           COMMAND        CREATED          STATUS          PORTS                                                                                            NAMES
e6657c4efe03   portainer/portainer-ce:latest   "/portainer"   39 seconds ago   Up 36 seconds   0.0.0.0:8000->8000/tcp, :::8000->8000/tcp, 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp, 9443/tcp   portainer

4.检查portainer-ce容器日志

检查portainer-ce容器运行日志

[root@docker ~]# docker logs portainer 
level=info msg="2023/03/18 09:01:10 [INFO] [internal,ssl] [message: no cert files found, generating self signed ssl certificates]"
2023/03/18 09:01:11 server: Reverse tunnelling enabled
2023/03/18 09:01:11 server: Fingerprint 4c:02:bf:f1:ef:7b:4c:e5:a2:25:ce:fc:eb:5a:f8:5e
2023/03/18 09:01:11 server: Listening on 0.0.0.0:8000...
level=info msg="2023/03/18 09:01:11 [INFO] [cmd,main] Starting Portainer version 2.11.0"
level=info msg="2023/03/18 09:01:11 [DEBUG] [chisel, monitoring] [check_interval_seconds: 10.000000] [message: starting tunnel management process]"
level=info msg="2023/03/18 09:01:11 [DEBUG] [internal,init] [message: start initialization monitor ]"
level=info msg="2023/03/18 09:01:11 [INFO] [http,server] [message: starting HTTPS server on port :9443]"
level=info msg="2023/03/18 09:01:11 [INFO] [http,server] [message: starting HTTP server on port :9000]"

五、portainer-ce的初始配置

1.设置管理账号

访问http://192.168.3.157:9000/#!/init/admin
进入管理创建界面

image.png

2.访问portainer-ce首页

设置玩管理员账号后,进入portainer-ce首页。

image.png

六、portainer-ce的容器管理

1.检查宿主机内所有容器

检查宿主机内所有容器,会显示所有容器列表。

image.png

2.查看某个容器内资源情况

选择某个容器,选择资源图形化展示。

image.png

image.png

3.查看宿主机本地镜像

查看本地宿主机内所有容器镜像。

image.png

4.查看容器网络

查看docker容器网络情况

image.png

5.查看数据卷列表

查看容器内所有数据卷

image.png

6.查看宿主机系统信息

查看宿主机内系统信息

image.png

七、总结

Portainer Community Edition (CE) 是一款功能强大且易于使用的容器管理工具,它提供了一个直观的图形用户界面,让用户能够轻松管理 Docker 容器、镜像、卷、网络等资源。Portainer CE 不仅支持 Docker 单机环境,还兼容 Docker Swarm、Kubernetes 和 ACI 等多种编排系统,使得容器化的应用程序管理变得更加简单高效。无论是开发人员还是运维工程师,都能从其便捷的操作体验中受益。

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
3天前
|
运维 网络安全 持续交付
IDEA+Docker 远程一键部署项目:技术干货分享
【10月更文挑战第4天】在现代软件开发中,快速、可靠、自动化的部署流程是提升开发效率和运维质量的关键。IDEA(IntelliJ IDEA)作为Java开发者首选的IDE,结合Docker这一轻量级容器化技术,能够实现远程一键部署项目,极大地简化了开发到生产的流程。今天,我将和大家分享这一组合在工作学习中的实际应用和技术干货。
28 3
|
5天前
|
Kubernetes 持续交付 Docker
利用 Docker 和 Kubernetes 实现微服务部署
【10月更文挑战第2天】利用 Docker 和 Kubernetes 实现微服务部署
|
5天前
|
人工智能 数据安全/隐私保护 虚拟化
Docker部署MaxKB详细步骤(window系统)
这篇文章详细介绍了如何在Windows系统上使用Docker部署MaxKB,并提供了从安装Docker到运行MaxKB容器的详细步骤,以及如何通过浏览器访问和配置MaxKB来使用ollama和llama3模型进行问答。
48 1
Docker部署MaxKB详细步骤(window系统)
|
3天前
|
存储 测试技术 Linux
【Docker项目实战】使用Docker部署Radicale日历和联系人应用
【10月更文挑战第4天】使用Docker部署Radicale日历和联系人应用
18 0
【Docker项目实战】使用Docker部署Radicale日历和联系人应用
|
5天前
|
定位技术 文件存储 网络架构
Docker部署PhotoPrism、Immich图片管理应用,无需公网IP远程访问教程
除了Synology、QNAP、TerraMaster等品牌的NAS设备内置图库功能,市面上还有多种备受欢迎的第三方应用,如PhotoPrism、Immich、LibrePhotos、Piwigo、Photoview等。这些应用不仅提供强大的图片管理能力,还可通过Docker轻松部署。借助贝锐花生壳服务,即使没有公网IP也能实现远程访问,突破地理限制,提升数据可访问性和安全性,让用户随时随地管理私人图库。
30 1
|
6天前
|
运维 测试技术 Linux
【Docker项目实战】使用Docker部署lemonitor镜像站点列表程序
【10月更文挑战第1天】使用Docker部署lemonitor镜像站点列表程序
17 0
【Docker项目实战】使用Docker部署lemonitor镜像站点列表程序
|
5天前
|
Kubernetes Cloud Native 流计算
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
Flink-12 Flink Java 3分钟上手 Kubernetes云原生下的Flink集群 Rancher Stateful Set yaml详细 扩容缩容部署 Docker容器编排
28 0
|
2月前
|
运维 Java Devops
阿里云云效操作报错合集之部署docker时遇到报错,该怎么办
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
运维 Kubernetes 前端开发
【云原生】阿里云服务器部署 Docker Swarm集群
阿里云服务器 一键部署 Docker Swarm 集群!
653 0
【云原生】阿里云服务器部署 Docker Swarm集群
|
弹性计算 数据可视化 关系型数据库
使用阿里云部署基于docker的mysql云服务
本篇文章将介绍如何使用阿里云安装docker、部署mysql服务,并远程连接至远端mysql
659 1
使用阿里云部署基于docker的mysql云服务