Preparing the FineReport Mounting Directory

  • Last update: 2025-03-25
  • Overview

    The project mounting path associates essential project files on the host machine with those in the container, realizing data persistence and enabling quick file viewing.

    This document briefly describes how to prepare the mounting directory for the O&M project.

    Mounting Directory Preparation

    All important files of the FineOps-deployed FineReport project should be mounted outside the container. Create a mounting directory in a free disk in the main application server and the component server in advance.

    1. Check the server disk space.

    Use the df-h command to find a mounting point with large free space.

    In this example, the most appropriate mounting point in the server is the /home path.

    2. Create a folder.

    Use the mkdir command to create a folder. (In this example, a folder named fanruan is created in the home directory.) 

    mkdir /home/fanruan

    The mounting path (/home/fanruan) is used to deploy the O&M project.

    iconNote:
    The mounting path cannot be /, /usr, /root, or /usr/local. You can create folders in these paths for file mounting.

    3. Empty ACL rules.

    An access control list (ACL) is a list of rules that specify the access permission of different users or user groups on files and directories.

    If the mounting directory is configured with an ACL, after deployment, the data-root directory of the Docker container will inherit the ACL automatically, which may lead to various issues caused by lack of permission such as container startup failure.

    Therefore, you are advised to remove all ACL rules configured for the mounting directory and retain the UNIX permission only. 

    setfacl -b /Mounting path

    4. Configure permission on the directory.

    Since you need to add and edit files in the mounting directory when installing the O&M project, ensure that:

    • The user you use is the owner of the project mounting directory. You can use the following command to grant permission.

    chown -R Username /Absolute path of the project mounting directory
    • The user has read, write, and execute permission on the project mounting directory. You can use the following command to grant permission.

    chmod -R 755 Username /Absolute path of the project mounting directory

    Mounted Content Introduction

    After a project is successfully deployed, the content of each component of the project is stored in the /Mounting directory/fanruanxxx path.

    The mounted contents feature persistence and will not be lost due to container upgrades and restarts.

    iconNote:

    Do not create a folder in /Mounting directory/fanruanxxx/fr, as the contents in the fr folder are not persistent and may be lost. You can upload resources to subfolders such as the help folder in the /Mounting directory/fanruanxxx/fr path (recommended).

    Folder in the Mounting Directory


    Corresponding Path in the Container

    Description

    fr

    This folder exists on all main application nodes in a cluster, and the folder content is identical.

    classes

    /usr/local/tomcat/webapps/webroot/WEB-INF/classes

    It stores default and custom class files to be called by the project.

    config/usr/local/tomcat/webapps/webroot/WEB-INF/config

    It stores files related to the configuration database (finedb) to be called by the platform, where the deployment_list.yaml file records the Docker commands related to component installation.

    customlib/usr/local/tomcat/webapps/webroot/WEB-INF/customlib


    • lib: It stores customized or imported JAR packages of the project.

    • fonts: It stores font files of the project.

    The total number of files in this folder and its subfolders must not exceed 1000.

    local/usr/local/tomcat/webapps/webroot/WEB-INF/local

    It stores compiled files of the new engine.

    logs/usr/local/tomcat/webapps/webroot/logs

    It stores swift logs (logdb).

    mount/usr/local/tomcat/mount

    It stores the setenv.sh file, which is used to set the environment variables and startup parameters of the project.

    plugins/usr/local/tomcat/webapps/webroot/WEB-INF/plugins

    It stores plugin-related files.

    ROOT/usr/local/tomcat/webapps/ROOT

    It stores necessary files such as the WeCom domain verification file.

    tomcat_logs/usr/local/tomcat/logs

    It stores general Tomcat logs.

    help/usr/local/tomcat/webapps/webroot/help

    It stores custom resources to be called by the project such as CSS, JS, HTML, and image files.

    Folder in the Mounting DirectoryCorresponding Path in the ContainerDescription

    fr

    For clusters, this folder does not exist in the mounting directory, but on the file server.

    assets/usr/local/tomcat/webapps/webroot/WEB-INF/assets
    • temp_attach: It stores original Excel files of the project.

    • vcs: It stores FineReport template backups.

    • drivers: It stores drivers uploaded via Driver Management, which are automatically synchronized to the /WEB-INF/drivers path of the project.

    • Other files: They are general files that share the persistent directory.

    backup/usr/local/tomcat/webapps/webroot/backup

    It stores project backups.

    dpworks/usr/local/tomcat/webapps/webroot/WEB-INF/dpworks

    It stores configuration files related to FineDataLink tasks. (This folder appears after you use FineDataLink-related functions.)

    reportlets/usr/local/tomcat/webapps/webroot/WEB-INF/reportletsIt stores FineReport templates.
    resources/usr/local/tomcat/webapps/webroot/WEB-INF/resources

    It stores resource configuration files related to the project.

    schedule/usr/local/tomcat/webapps/webroot/WEB-INF/schedule

    It stores files generated by Task Schedule.

    treasures/usr/local/tomcat/webapps/webroot/WEB-INF/treasures

    It stores data packages generated by Cloud O&M.

    Folder in the Mounting DirectoryCorresponding Path in the ContainerDescription

    ops_agent

    conf/usr/local/agent/conf

    It stores configuration files of the ops_agent component.

    logs/usr/local/agent/logs

    It stores log files of the ops_agent component.

    resources/usr/local/agent/resources

    It stores resource files.

    Folder in the Mounting DirectoryCorresponding Path in the ContainerDescription

    mysql

    bin/

    It stores MySQL executables, such as mysql and mysqld, for starting, stopping, and managing MySQL services.

    data/var/lib/mysql

    It is a data directory storing the actual data files of MySQL database, including table data, indexes, and others.

    It usually contains a mysql subdirectory storing the data files of the MySQL database and other user-created databases.

    log/var/log/mysql

    It stores log files that record various activities and events.

    Folder in the Mounting DirectoryCorresponding Path in the ContainerDescription

    elasticsearch

    config/usr/share/elasticsearch/config

    It stores configuration files of the elasticsearch component such as elasticsearch.yml.

    These files contain various elasticsearch parameters, such as the node name, the cluster configuration, and the network setting.

    data/usr/share/elasticsearch/data

    It is a data directory storing elasticsearch data such as index data, document data, and log data.

    It typically includes a nodes subdirectory containing each node's data storage folder.

    logs/usr/share/elasticsearch/logs

    It is a log directory storing the log files of elasticsearch.

    These log files include startup logs, logs during indexing, error logs, and so on.

    plugins/usr/share/elasticsearch/plugins

    It stores the Elasticsearch plugin.

    The Elasticsearch plugin is usually extracted into this directory during installation.

    secrets/run/secrets

    It stores sensitive information and security-related files that are used to configure security functions and manage credentials.

    Folder in the Mounting DirectoryCorresponding Path in the ContainerDescription

    nginx

    conf/usr/local/nginx/conf

    It stores configuration files of the nginx component such as nginx.conf.

    These files contain parameters of the virtual host of nginx, the reverse proxy, load balancing, and the cache setting.

    log/usr/local/nginx/logs

    It is a log directory storing nginx logs, such as access logs and error logs.

    The access log records details of each request, and the error log records error messages reported when nginx is processing the request.

    lua/usr/local/nginx/lua

    It is used to enable the Lua module and contains Lua script files used to customize the nginx behavior.

    Folder in the Mounting DirectoryCorresponding Path in the ContainerDescription

    redis

    data/data

    It is a data directory storing the persistent data of the redis component, including the data files and persistent files (such as RDB and AOF files) involved in host-client synchronization.

    It usually contains a dump.rdb file and an appendonly.aof file.

    Folder in the Mounting DirectoryCorresponding Path in the ContainerDescription

    minio

    data/data

    It is a data directory storing data of the minio server.

    All objects uploaded to minio are stored in this directory and organized by bucket and object key.


    Attachment List


    Theme: FanRuan Project Deployment
    • Helpful
    • Not helpful
    • Only read