老规矩,全部下载文件放csdn头部,自行下载即可.
安装docker
ubuntu/debian直接用1panel面板一键安装以后自带docker,目前国内最方便docker部署方式.
在线安装docker
系统要求:双核,2G内存,10G存储空间
1panel面板一键部署
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
更多安装方法参考1panel官方文档:https://1panel.cn/docs/installation/online_installation/
安装好会提示你登录地址和默认的用户密码登录面板即可。
测试docker
docker-compose -v
回显 Docker Compose version v2.26.1 即为正确安装.
配置GLPI环境
[!tip] docker容器持久化
因为我们本身是为了资产管理,所以说我们的数据库及其相关的文件都需要定期的备份,这样的话我们就不能直接用docker本身生成的文件,不便于管理,所以说我们需要将docker文件进行持久化,也就是docker容器持久化.
创建文件
数据库 mariadb.env
cd /
mkdir glpi
cd /glpi/
cat > mariadb.env << 'EOF'
MARIADB_ROOT_PASSWORD=diouxx
MARIADB_DATABASE=glpidb
MARIADB_USER=glpi_user
MARIADB_PASSWORD=glpi
EOF
配置docker-compose.yml 这里时区我改成了上海:TIMEZONE=Asia/Shanghai
cat > docker-compose.yml << 'EOF'
version: "3.2"
services:
#MariaDB Container
mariadb:
image: mariadb:10.7
container_name: mariadb
hostname: mariadb
volumes:
- /var/lib/mysql:/var/lib/mysql
env_file:
- ./mariadb.env
restart: always
#GLPI Container
glpi:
image: diouxx/glpi
container_name : glpi
hostname: glpi
ports:
- "80:80"
volumes:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- /var/www/html/glpi/:/var/www/html/glpi
environment:
- TIMEZONE=Asia/Shanghai
restart: always
EOF
运行命令
docker-compose up -d
等待镜像拉取完毕
上传GLPI
打开1panel面板,找到 容器
,中的 glpi
,选择后面菜单的 更多
停止.
再点击 更多
中的 编辑
,复制路径
找到 系统
中的 文件
粘贴路径
这里注意,需要把路径中的glpi去掉,直接打开 这个路径 /var/www/html
上传文件
选中 glpi-10.0.18.tgz
解压,得到glpi文件夹,进入glpi目录,勾选全部文件,修改权限.
这里的1000为网页访问的权限,按照修改即可.
再勾选这3个文件夹修改权限
再返回容器启动GLPI的容器即可,查看GLPI的容器日志,运行结束即可.
运行glpi安装向导
输入你的系统ip,我这里已192.168.15.5作为演示
浏览器直接打开 http://192.168.15.5/
自动跳转到安装界面
点击继续
点安装
点击继续
填入相关信息
mariadb
glpi_user
glpi
勾选现有数据库
等待初始化
继续
去掉信息
默认参数
默认 登录名/密码是:
- 默认管理员帐号是 glpi/glpi
- 技术员帐号是 tech/tech
- 普通帐号是 normal/normal
- 只能发布的帐号是 post-only/postonly
您可以删除或修改这些帐号和初始数据。
登录系统
按照安全要求删除install.php,然后刷新页面
rm -rf /var/www/html/glpi/install/install.php
刷新页面后警告消失
结语
至此我们整个glpi资产管理软件的服务端就已经安装完毕了。对于我们来说的话,这里其实只是完成了一个基础的框架搭建,接下来才是重点,因为我们是用来管理资产的,我们所有的资产不能通过手动去添加,因为这样的话实在是太麻烦了,而且耗时耗力。我们会通过一个插件进行网络自动收集所有在线的设备的相关信息,当然了,前提是你的设备能够联网并且能够分配到ip地址,接下来的我会继续进行讲解,如果你对这个项目感兴趣,那请你持续关注我。
这个项目我创建了开源仓库,欢迎访问 https://gitcode.com/thanlife/docker-glpi