Portainer自定义设置默认的用户名密码

news2025/1/19 20:24:22

文章目录

    • Portainer介绍
    • 用户密码问题
    • 解决一半
    • 未完待续

Portainer介绍

  • Portainer是一款轻量级的Docker管理Web界面,它可以让用户方便地管理和部署Docker容器,管理Docker Swarm集群等
  • 用户可以通过Portainer轻松完成基于Docker的应用部署、镜像管理、容器监控、日志查看、用户权限管理等一系列任务
  • 透过Portainer的用户界面,用户可以轻松地创建、启动、停止、删除、复制和监视容器,以及管理镜像和管理Docker网络、卷等。
  • 此外,Portainer还提供了一些有用的特性,如YAML编辑器、安全性检查、负载均衡、网络拓扑图和实时监控等,可以帮助用户更好地管理和监控Docker应用。
  • Portainer适用于Docker初学者和高级用户,提高了使用Docker的便利性和效率。

用户密码问题

  • 我们平台使用docker部署,使用 docker-compose 管理所有docker服务的配置,并使用 portainer 作为整个docker环境的监控和管理软件
  • portainer也是使用docker部署的,也在 docker-compose.yml里配置的
  • 问题是第一次使用“docker-compose up”并且 portainer 开始运行时,必须到 portainer web 界面(localhost:9000)并设置管理员用户和密码,密码强度要求还不低
  • 当服务断电关闭后,有时候还出错New Portainer installation Your Portainer instance timed oul for security purposes,必须重启portainer服务,又要重设密码
    在这里插入图片描述
  • 现在我需要自定义默认的用户密码,创建 portainer 时直接创建,以便当用户第一次导航到 portainer 时,已经创建了 admin 用户

解决一半

  • 去搜索了下,并查看了portainer的官方文档,发现Portainer 允许您从命令行为管理员帐户指定加密密码--admin-password=ADMIN-PASSWORD
  • 这里是指定admin用户的password密码,是加密过后的,可以由htpasswd产生
  • htpasswd,需要安装哈希加密工具yum install -y httpd-tools,安装后可以使用这个命令htpasswd生成
  • 介绍下htpasswd参数

#-n:Don’t update file; display results on stdout //不更新文件;在标准输出上显示结果
#-b:Use the password from the command line //从命令行使用密码
#-m:Force MD5 encryption of the password //强制对密码进行MD5加密

  • 尝试了大半天,搜索了一大堆,翻了官方文档,也没找到--admin-password设置密码所需的htpasswd使用案例
  • 密码设置是成功的,9000界面直接是登录界面,可以输入用户名、密码校验
  • 但是输入我设置的密码,一直提示校验失败,也没搜到解决方法
  • 最后通过使用data文件夹映射解决,但还是需要设置一次,后续部署项目时,将此文件夹一起部署过去
  • 相关docker-compose配置如下
  # 容器管理界面
  portainer:
    image: portainer/portainer-ce:latest
    container_name: portainer
    ports:
      - 9001:9000
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./volumes/portainer-data:/data
      - /etc/localtime:/etc/localtime
    restart: always

未完待续

  • 无论是中文搜索结果,还是英文搜索结果,都没找到--admin-password设置密码所需的htpasswd使用案例
  • 只找到了生成密码文件,配置的方法,但是不太适合我们环境使用
  • 如果哪位知道portainer--admin-password设置密码,使用htpasswd的方法,可以留言告知
  • 如果后续自己找到了解决办法,再更新这里

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/469446.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

三台Windows服务器搭建RabbitMq集群及镜像队列

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、RabbitMq是什么?二、RabbitMq集群搭建步骤1.环境说明2.RabbitMQ 安装3.RabbitMQ 集群搭建4.RabbitMQ镜像队列 总结 前言 消息中间件-RabbitMq集…

Ubuntu 23.04 安装 Harbor

Ubuntu 23.04 安装 Harbor 安装 Docker CE配置 tls 证书配置 docker 信任自签名证书下载和安装 Harbor设置 Harbor 开机启动验证 安装 Docker CE sudo apt-get remove docker docker-engine docker.io containerd runcsudo apt-get update -y sudo apt-get install -y \ca-cer…

shell脚本----循环语句for

文章目录 一、echo命令二、for循环三、continue和break 一、echo命令 常见转义字符: 转义符号含义-n表示不换行输出\e输出转义字符,将转义后的内容输出到屏幕上\b转义后相当于按退格键,但前提是b后面存在字符: b表示删除前一个字符&#xf…

【Spring篇】IOC/DI配置管理第三方bean

🍓系列专栏:Spring系列专栏 🍉个人主页:个人主页 目录 一、案例:数据源对象管理 1.环境准备 2.实现Druid管理 3.实现C3P0管理 二、加载properties文件 1.第三方bean属性优化 2.读取单个属性 3.注意事项 三、核心容器 1.环境准备 2.容器 1.容器的创建…

linux|进程间通信如何加锁

进程间通信有一种[共享内存]方式,大家有没有想过,这种通信方式中如何解决数据竞争问题?我们可能自然而然的就会想到用锁。但我们平时使用的锁都是用于解决线程间数据竞争问题,貌似没有看到过它用在进程中,那怎么办&…

【Linux】进程概念与fork初识——if与else竟然能够同时执行?!

文章目录 💐专栏导读💐文章导读🌷进程是什么🌷进程的描述——PCB🌷进程的组织🌷如何查看进程🌷如何通过系统调用查看进程PID🌷通过系统调用创建进程🌺认识fork&#x1f3…

TuGraph 开源数据库体验

TuGraph 开源数据库体验 文章目录 TuGraph 开源数据库体验1. 简单介绍2. 可视化界面体验:查询界面:数据建模:数据导入: 3. 体验心得: 1. 简单介绍 TuGraph 是蚂蚁集团自主研发的大规模图计算系统,提供图数…

大数据技术之SparkSQL

第1章 Spark SQL概述 1.1 什么是Spark SQL 1)Spark SQL是Spark用于结构化数据(Structured Data)处理的Spark模块。 1.2 为什么要有Spark SQL 1.3 Spark SQL原理 1.3.1 什么是DataFrame (1)DataFrame是一种类似RDD的分…

统计学习方法第四章——朴素贝叶斯法

x.1 前言 朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。是通过给定training dataset学习联合概率分布的方法,是一种生成方法。 x.2 使用贝叶斯定理做分类 使用贝叶斯定理做分类,相比较于朴素贝叶斯即丢除特征条件独立假设这个条件。 …

MySQL主从复制详细介绍

一、主从复制的目的 ​ MySQL内建的复制功能是构建基于MySQL的大规模、高性能应用的基础,复制功能的目的是构建高性能的应用,同时也是高可用性、可扩展性、灾难恢复、备份以及数据仓库等工作的基础。比较常见的用途有以下几种: 数据分布&am…

APP渗透—查脱壳、反编译、重打包签名

APP渗透—查脱壳、反编译、重打包签名 1. 前言1.1. 其它 2. 安装工具2.1. 下载jadx工具2.1.1. 下载链接2.1.2. 执行文件 2.2. 下载apktool工具2.2.1. 下载链接2.2.2. 测试 2.3. 下载dex2jar工具2.3.1. 下载链接 3. 查壳脱壳3.1. 查壳3.1.1. 探探查壳3.1.2. 棋牌查壳 3.2. 脱壳3…

【MiniGPT-4】手把手教部署

最近MiniGPT4开源了,获得了很多网友好评,在Github上获得了1.6万的star,它相比ChatGPT3.5来说,可以实现图片识别,生成想要的文本效果,理解能力非常强。 论文地址:https://github.com/Vision-CAIR…

【大数据之Hadoop】二十一、MapReduce、HDFS、Yarn配合工作(作业提交全过程)

1-11、26为Yarn;12-17为HDFS写数据流程;18-25、27-31为MapReduce;19-25为Shuffle;32-41为HDFS写数据流程。 (0)MR程序提交到客户端所在的节点,在集群模式中运行MR程序,当运行到主函…

数学建模第七天:数学建模算法篇之插值及MATLAB实现

目录 一、前言 1、引例 2、拟合定义 3、拟合与插值的关系 二、拟合 1、线性最小二乘法求解 ①思路 ②解法 2、MATLAB对线性最小二乘拟合的实现 ①函数说明 ②求解例题 3、MATLAB实现非线性曲线拟合 ①lsqcurvefit函数 ②代码求解 4、MATLAB实现非线性最小二乘拟…

华为2023暑期笔试(2-2)——最近最少使用(LRU, Least recently used)缓存算法

目录 题目内容解答要求(解答要求限制了只能使用LRU)输入描述样例思路代码 题目内容 你是一名网络工程师,你正在为一家云计算公司开发一个虚拟机管理系统。你的系统需要为每个虚拟机分配一个唯一的ID,用来标识和通信。为了实现这个…

C++基础demo(C++入门基础案例)

C入门基础案例学习与了解 demo16 计算年份是否为闰年(各种运算符结合)demo17 打印ASCII码表demo18 求完数demo19 密码验证(if……else)demo20 图书管理(if…else if…else)demo21 信号灯(和--&a…

python中使用ctypes库调用使用MMDeploy C++ SDK编译得到的dll文件时,出现WinError126的解决方法

之前,通过以下两篇文章,着重介绍了,使用openMMLab开发的MMDeploy库对MMxx系列仓库训练得到的权重pth转换得到的onnx,并分别使用python SDK和C SDK进行调用的详细步骤: 使用MMDeploy(预编译包)转…

Enterprise:如何在 Elastic 企业搜索引擎中添加对更多语言的支持

作者:Ioana-Alina Tagirta Elastic App Search 中的引擎(engines)使你能够索引文档并提供开箱即用的可调搜索功能。 默认情况下,引擎支持预定义的语言列表。 如果你的语言不在该列表中,此博客将说明如何添加对其他语言…

RabbitMQ笔记

一、MQ与RabbitMQ概述 1. MQ简述 MQ(Message Queue)消息队列,是基础数据结构中 “先进先出” 的一种数据结构,也是在消息的传输过程中保存消息的容器(中间件),多用于分布式系统之间进行通信。 …