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

docker部署phpIPAM_第1张图片

1.3上传到内网docker上服务器

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

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

docker部署phpIPAM_第2张图片
image.png

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

这里默认内网环境docker以及docker compose已经安装,没有安装的需要安装
ssh登录不演示,这你要不会就转行吧,这玩意不适合你
docker部署phpIPAM_第3张图片

1.5解压部署

docker load -i ipam.tar 

docker部署phpIPAM_第4张图片

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与端口,首次访问出现安装配置界面

1.7.2数据库安装

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

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

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

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


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

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

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


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


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


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


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

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

将镜像导出的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
:::

机柜中文乱码问题


解决:上传中文字体到服务器对应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,并删除原来的名字,将新字体重新命名为原来的名字,就可以了
# 无需重启

你可能感兴趣的:(docker,容器,运维)