真!docker离线部署GLPI资产管理系统

#Linux系统基础

一、准备工作

1.在离线环境中安装好docker和docker-compose

网上有很多例子,不再赘述

2.离线安装Dpanel面板

3.联网环境中配置docker镜像源地址

  • 准备一个可以上网的Linux,安装好docker和docker-compose之后配置镜像地址
  • 原有的镜像地址可能导致镜像下载速度慢的问题!!!
  • 建议修改镜像站地址
bash 复制代码
vi /etc/docker/daemon.jsion  #打开docker镜像源配置文件


#更新为以下配置
{
    "registry-mirrors": [
        "https://docker.m.daocloud.io",
        "https://docker.imgdb.de",
        "https://docker-0.unsee.tech",
        "https://docker.hlmirror.com",
        "https://docker.1ms.run",
        "https://func.ink",
        "https://lispy.org",
        "https://docker.xiaogenban1993.com"
    ]
}

#修改完成之后保存退出
#重启docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker

4.联网环境准备项目部署文件

bash 复制代码
mkdir -p /docker/glpi && cd /dcoker/glpi  #创建项目目录用于存放项目文件

在当前目录下准备部署文件docker-compose.yaml

  • 按照下面的文档编辑该文件,在该文件执行时,docke会按照文件的内容下载相关镜像,并创建响应的容器,后续该文件也需要拷贝至离线服务器中⚠️🔥
bash 复制代码
version: "3.2"

services:
# MariaDB Container
  mariadb:
    image: mariadb:10.7
    container_name: mariadb
    hostname: mariadb
    volumes:
      - /docker/glpi/mysql:/var/lib/mysql
    environment:
      - MARIADB_ROOT_PASSWORD=glpi
      - MARIADB_DATABASE=glpi
      - MARIADB_USER=glpi
      - MARIADB_PASSWORD=glpi
    
    restart: always

# GLPI Container
  glpi:
    image: diouxx/glpi
    container_name : glpi
    hostname: glpi
    ports:
      - "8088:80"
    links:
      - mariadb:mariadb
    volumes:
#     - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
      - /docker/glpi/html/:/var/www/html/glpi
    environment:
      - TIMEZONE=Asia/Shanghai
    restart: always
    depends_on:
      - mariadb

5.在联网环境中部署glpi

在当前目录下在运行下面命令,等待执行完毕

bash 复制代码
docker-compose -f docker-compose.yaml up -d 
#运行完毕后,查看容器
docker ps
  • 查看当前容器运行情况

6.镜像文件

bash 复制代码
#查看docker镜像
docker images

#保存相关镜像为tar文件,注意将[]替换为你的实际镜像ID
docker save -o glpi.tar [glpi镜像ID]
docker save -o mariaDB.tar [mariaDB镜像ID]

7.下载glpi源码

在上述的操作过后,glpi并不是立即就可以运行,通过查看glpi容器的运行日志,发现该容器还需要访问github将源码glpi-11.0.4.tgz下载解压至该容器的/var/www/html目录下才可以正常访问系统,所以在离线环境必须实现准备好该源码文件

使用浏览器,访问以下连接进行下载
https://github.com/glpi-project/glpi/releases/download/11.0.4/glpi-11.0.4.tgz

8.整理离线部署文件

将联网服务器中的文件拷贝至离线环境中

以下是该项目最终需要准备好的离线文件

  • docker-compose.ymal,用于安装部署glpi和mariaDB
  • docker-compose-dpanel.yaml,用于安装Dpanel面板,管理docker
  • dpanel.tar ,dpanel的镜像文件
  • glpi.tar glpi镜像文件
  • mariaDB.tar 数据库镜像文件
  • glpi-11.0.4.tgz glpi源码文件

二、离线安装

1.安装dpanel面板和系统镜像

  • 离线服务器中创建以下目录
bash 复制代码
mkdir -p /docker/ && cd /docker
  • 将上述文件拷贝至离线服务器中,进行以下操作
bash 复制代码
#安装dpanel面板
docker load -i dpanel.tar
docker-compose -f docker-compose-dpanel.yaml up -d

#安装glpi
docker load -i mariaDB.tar
docker load -i glpi.tar
docker-compose -f docker-compose.ymal up -d
  • 等待程序执行完毕后进行下一步操作

2.拷贝glpi源码至容器

  • 打开dpanel面板,点击容器管理,点击管理glpi容器文件

  • 切换到目录:/var/wwqw/html,将 glpi-11.0.4.tgz文件拷贝至该目录下,系统会自动解压文件

3.重启glpi容器

4.手动授权目录

  • 上述操作后,glpi容器任然报错,需要手动将/var/wwqw/html/glpi目录进行授权,授予写权限

5.再次重启glpi容器即可

三、浏览器访问

浏览器访问http://yourhostIP:8088进行访问

✨注意:这里的端口号在前面的docker-compose.yaml中进行了定义,如需自定义,请在前面的步骤中提前修改

  • 注意,在后续的安装引导中将以下信息填写至其中(相关定义同样在)docker-compose.yaml中定义,建议修改强密码!!!
    • 数据库地址:mariadb
    • 数据库账号:glpi
    • 数据库密码:glpi
相关推荐
howard20052 小时前
Docker实战:数据管理
docker·数据管理
susu10830189112 小时前
ubuntu系统删除 Docker 启动的所有容器、卸载 Docker 以及清理 Docker 相关保留路径
ubuntu·docker·eureka
南山nash2 小时前
docker存储卷详解
运维·docker·容器
幺零九零零2 小时前
Docker底层-Cgroup
运维·docker·容器
卜锦元2 小时前
Golang后端性能优化手册(第四章:异步处理与消息队列)
开发语言·后端·docker·容器·性能优化·golang·团队开发
汪碧康2 小时前
【k8s-1.34.2安装部署】二.kubernets软件、证书、配置、脚本等文件准备
云原生·容器·kubernetes·xkube·k8s管理平台·k8s安装部署·k8s dashboard
ldj20202 小时前
docker-compose对比k8s
云原生·容器·kubernetes
不学懂K8S不改名2 小时前
docker可视化工具(Portainer)
运维·docker·容器
啊勇的编程论坛2 小时前
DeepSeek + Kubernetes 全栈运维赋能指南:智能化云原生运维新时代
运维·云原生·容器·kubernetes·云运维