docker部署phpIPAM

0说明

IPAM:IP地址管理系统

IP地址管理(IPAM)是指的一种方法IP扫描,IP地址跟踪和管理与网络相关的信息的互联网协议地址空间和IPAM系统。 IPAM软件和IP的工具,管理员可以确保分配IP地址仍然是当前和足够的库存先进的IP工具和IPAM服务。 IPAM简化并自动化管理的许多任务参与IP空间管理,包括编写DNS记录和配置DHCP设置。 额外的功能,如控制DHCP预订以及其他数据聚合和报告功能,与网络IPAM也常见。

根据官网文档进行安装部署封装
官网安装地址:https://phpipam.net/news/phpipam-installation-on-centos-7/

官网地址:https://phpipam.net/

1docker部署phpIPAM

安装的ipam版本:1.5.3
docker环境默认已经部署

1.1docker-compose文件编写

在对应的目录下编写

[root@localhost cmipad]# pwd
/app/cmipad
 
cat docker-compose.yml 
version: '3'

services:
  phpipam-web:
    privileged: true
    image: phpipam/phpipam-www:1.5x
    ports:
      - "80:80"
    environment:
      - TZ=Asia/Shanghai
      - IPAM_DATABASE_HOST=phpipam-mariadb
      - IPAM_DATABASE_PASS=123456
      - IPAM_DATABASE_WEBHOST=%
    restart: unless-stopped
    volumes:
      - phpipam-logo:/phpipam/css/images/logo
    depends_on:
      - phpipam-mariadb

  phpipam-cron:
    privileged: true 
    image: phpipam/phpipam-cron:1.5x
    environment:
      - TZ=Asia/Shanghai
      - IPAM_DATABASE_HOST=phpipam-mariadb
      - IPAM_DATABASE_PASS=123456
      - SCAN_INTERVAL=1h
    restart: unless-stopped
    depends_on:
      - phpipam-mariadb

  phpipam-mariadb:
    privileged: true 
    image: mariadb:10.3.37
    ports:
      - "3306:3306" 
    environment:
      - MYSQL_ROOT_PASSWORD=123456
    restart: unless-stopped
    command:
      - mysqld
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_unicode_ci
    volumes:
      - phpipam-db-data:/var/lib/mysql

volumes:
  phpipam-db-data:
  phpipam-logo:

1.2将镜像保存早一个包中

[root@localhost cmipad]# docker save -o ipam.tar phpipam/phpipam-cron:1.5x phpipam/phpipam-www:1.5x mariadb:10.3.37 
[root@localhost cmipad]# ls
docker-compose.yml  ipam.tar

image.png

1.3上传到内网docker上服务器

文件比较大,上传时间看网速
还有docker compose文件也上传过去

scp ipam.tar 10.24.107.22:/app/ipam
scp docker-compose.yml 10.24.107.22:/app/ipam

image.png
image.png

1.4登录内网服务器进行部署

这里默认内网环境docker以及docker compose已经安装,没有安装的需要安装
ssh登录不演示,这你要不会就转行吧,这玩意不适合你
image.png

1.5解压部署

docker load -i ipam.tar 

image.png

1.6启动

docker-compose -p phpipam up -d

image.png

1.7第一次访问配置

1.7.1选择 New phpipam installation

三个选项新的 phpipam 安装、迁移 phpipam 安装和工作安装,新的 phpIPAM 安装时,选择 New phpipam installation
直接访问ip与端口,首次访问出现安装配置界面
image.png

1.7.2数据库安装

分为自动数据库安装、MySQL 导入说明、手动数据库安装,选择自动数据库安装选项
image.png

1.7.3数据库用户以及密码配置

输入数据库用户名、密码、主机、数据库名称 选择 Install phpipam database 选项
docker-compose 设置的用户名:root 密码123456,根据你的配置文件来填写
image.png

1.7.4提示数据库安装成功,选择 Continue 继续安装

image.png

1.7.5设置 Web 界面的管理员用户

设置 Web 界面的管理员用户、密码、phpIPAM 界面顶部的标题以及 phpIPAM 安装的 URL,选择Save settings 选项
用户名默认是admin,密码设置为1qaz@WSX
image.png

1.7.6选择 Proceed to login 跳转到 phpIPAM 登录界面

image.png

1.7.7输入admin 用户密码登录(输入你刚刚设置的admin 和密码)

image.png

1.7.8设置账户中文显示,选择Administrator–Users

image.png

1.7.8选择Admin 用户,点击编辑按钮

image.png

1.7.9注销当前登录会话重新登录,界面中文显示

image.png

镜像压缩包存储位置以及使用

将镜像导出的tar包,保存在基础镜像:centos:7.9.2009下的/root
保存地址:docker仓库地址

# 阿里云
registry.cn-beijing.aliyuncs.com/app_demo/app:centos7.9.2009-ipam1.5.3

# 华为云
swr.cn-north-4.myhuaweicloud.com/app_demo/centos7.9.2009/ipam:centos7.9.2009-ipam1.5.3

# 腾讯云
ccr.ccs.tencentyun.com/app_demo/app:centos7.9.2009-ipam1.5.3

:::warning
使用将tar包复制到宿主机的docker环境中
使用sava保存的,使用load导入才行
当初:docker save -o ipam.tar phpipam/phpipam-cron:1.5x phpipam/phpipam-www:1.5x mariadb:10.3.37
导入:docker load -i ipam.tar
将docker-compose.yml的内容复制进去
启动:docker-compose -p ipam up -d
:::

机柜中文乱码问题

image.png
解决:上传中文字体到服务器对应php字体目录并修改php代码
由于是docker部署,所以进容器中上传并修改,进入的是phpipam/phpipam-www:1.5x容器

docker exec -it cmipad-phpipam-web-1 sh

搜索字体
找到“MesloLGS-Regular.ttf”字体位置就能知道php字体路径了

find / -name MesloLGS-Regular.ttf
/phpipam/css/fonts/MesloLGS-Regular.ttf
# 将对应的字体上传到/phpipam/css/fonts,并删除原来的名字,将新字体重新命名为原来的名字,就可以了
# 无需重启

image.png

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

web前端之引入svg图片、html引入点svg文件、等比缩放、解决裁剪问题、命名空间、object标签、阿里巴巴尺量图、embed标签、iframe标签

MENU 前言直接在页面编写svg使用img标签引入通过css引入使用object标签引入其他标签参考资料 前言 web应用开发使用svg图片的方式,有如下几种方式 1、直接在页面编写svg 2、使用img标签引入 3、通过css引入 4、使用object标签引入 直接在页面编写svg 在html页面直接…

Redis-缓存高可用集群

Redis集群方案比较 哨兵模式 性能和高可用性等各方面表现一般,特别是在主从切换的瞬间存在访问瞬断的情况。另外哨兵模式只有一个主节点对外提供服务,没法支持很高的并发,且单个主节点内存也不宜设置得过大,否则会导致持久化文件过…

中国信通院王蕴韬:从“好用”到“高效”,AIGC需要被再次颠覆

当下AIGC又有了怎样的颠覆式技术?处于一个怎样的发展阶段?产业应用如何?以及存在哪些风险?针对这些问题,我们与中国信通院云计算与大数据研究所副总工程师王蕴韬进行了一次深度对话,从他哪里找到了这些问题…

萨科微举办工作交流和业务分享会

萨科微(www.slkoric.com)举办工作交流和业务分享会,狠抓人才培养团队的基本功建设。萨科微总经理宋仕强先生认为,当下市场经济形势复杂多变,给公司经营带来巨大压力,同时考验着企业自身的发展韧性。萨科微公…

【Linux基础】Linux常见指令总结及周边小知识

前言 Linux系统编程的学习我们将要开始了,学习它我们不得不谈谈它的版本发布是怎样的,谈它的版本发布就不得不说说unix。下面是unix发展史是我在百度百科了解的 Unix发展史 UNIX系统是一个分时系统。最早的UNIX系统于1970年问世。此前,只有…

基于厨师算法优化概率神经网络PNN的分类预测 - 附代码

基于厨师算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于厨师算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于厨师优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神经网络的光滑…

gobuster扫描工具使用教程(简单上手)

gobuster扫描工具使用教程 gobuster是干嘛用的? Gobuster是一个用于网络渗透测试的工具。它主要用于在Web应用程序中发现隐藏的内容或目录枚举,可以扫描子域名以及Web目录,寻找可能存在的漏洞。这个工具使用Go语言编写,具备优异的执行效率…

mac电脑文件比较工具 UltraCompare 中文for mac

UltraCompare是一款功能强大的文件和文件夹比较工具,用于比较和合并文本、二进制和文件夹。它提供了丰富的功能和直观的界面,使用户能够轻松地比较和同步文件内容,查找差异并进行合并操作。 以下是UltraCompare软件的一些主要特点和功能&…

C语言—一维数组

一、一维数组的创建 int arr1[10];char arr2[10];flout arr3[1];double arr4[20]; 数组创建,“[ ]”中要给一个常量,不能使用变量 二、一维数组初始化 int arr1[10]{1,2,3}; //不完全初始化int arr2[4]{3,4,5,6}; //完全初始化char arr3[4]{a,b,99,d};cha…

MYSQL基础知识之【数据类型】

文章目录 前言标题一数值类型日期和时间类型字符串类型后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:Mysql 🐱‍👓博主在前端领域还有很多知识和技术需要掌握,正在不断努力填补技术短板。(如果出现错…

能让PDF看起来像是扫描件的Look Scanned

什么是 Look Scanned ? Look Scanned 是一个能够让 PDF 看起来就像是扫描件一样的纯前端网站。你再也不需要麻烦地打印之后扫描了,你所需要的就是鼠标点几下。 这是个挺有意思的软件,但是老苏不确定什么场景下会用到这个软件,如果不想自己搭…

通过JMeter压测结果来分析Eureka多种服务下线机制后的服务感知情况

文章目录 前言1. Eureka-Server的设计2. EurekaRibbon感知下线服务机制3.服务调用接口压测模型4.Eureka几种服务下线的方式4.1强制下线压测 4.2 发送delete()请求压测 4.3 调用DiscoveryManager压测 4. 三方工具Actuator 总结 前言 上文末尾讲到了Eurek…

Leetcode—1457.二叉树中的伪回文路径【中等】

2023每日刷题(四十) Leetcode—1457.二叉树中的伪回文路径 实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ int record[10] {0};int accumula…

MyBatis的功能架构,MyBatis的框架架构设计,Mybatis都有哪些Executor执行器,Mybatis中如何指定使用哪一种Executor执行器

文章目录 MyBatis的功能架构是怎样的把Mybatis的功能架构分为三层: **MyBatis的框架架构设计**是怎么样的架构图如下Mybatis都有哪些Executor执行器?它们之间的区别是什么?Mybatis中如何指定使用哪一种Executor执行器? MyBatis的功…

django(千锋教育)

创建一个django项目 官网下载python最新版本 配置到环境变量中 打开intlij编辑器 创建django项目 安装django:pip install django 创建django项目: django-admin startproject django01 创建djangoAPP:python manage.py startapp user 启动&#xff1…

P10 C++类和结构体的区别

目录 01 前言 02 struct 与 class格式上的区别 03 struct 与 class 使用上的区别 04 常用的代码风格 01 前言 今天这期我们主要解决一个问题,就是 C 中的类和结构体有什么区别。 本期我们有两个术语,结构体 struct,它是 structure 的缩写…

开源vs闭源,处在大模型洪流中,向何处去?

文章目录 一、开源和闭源的优劣势比较1.1 开源优势1.2 闭源的优势 二、开源和闭源对大模型技术发展的影响2.1 数据共享2.2 算法创新2.3 业务拓展2.4 安全性和隐私2.5 社会责任和伦理 三、开源与闭源的商业模式比较3.1 盈利模式3.2 市场竞争3.3 用户生态3.4 创新速度 四&#xf…

2023.11.24 关于 请求转发 和 请求重定向 的区别

目录 请求转发(forward) 请求重定向(redirect) 二者区别 定义不同 请求方不同 数据共享不同 最终 URL 地址不同 代码实现不同 阅读下文之前 建议点击下方链接简单了解 Fiddle Fiddle 的安装与使用 请求转发(fo…

tinyViT论文笔记

论文:https://arxiv.org/abs/2207.10666 GitHub:https://github.com/microsoft/Cream/tree/main/TinyViT 摘要 在计算机视觉任务中,视觉ViT由于其优秀的模型能力已经引起了极大关注。但是,由于大多数ViT模型的参数量巨大&#x…

prometheus|云原生|grafana-9.4.3版本的主题更改

一, grafana-9.4.3版本的主题更改 grafana-9.4.3版本应该是目前比较高的版本了,但不知道是什么原因,grafana的主题界面并不多,只有暗色,亮色和系统色三种 配置管理----首选项里可以看到 亮色: 暗色&…