Preparing the FineDataLink 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 FineDataLink 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 /home.

    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.

    icon

    Note:


    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 /Mounting directory/fanruanxxx.

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

    icon

    Note:


    Do not create a folder in /Mounting directory/fanruanxxx/fdl, as the contents in the fdl folder are not persistent and may be lost.

    You can upload resources to subfolders such as the help folder in the /Mounting directory/fanruanxxx/fdl path (recommended).

    Folder in the Mounting Directory

    Corresponding Path in the Container

    Description

    fdl

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

    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.

    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.

    Folder in the Mounting DirectoryCorresponding Path in the ContainerDescription

    fdl

    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.

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

    It stores resource configuration files related to the project.

    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

    kafka

    data/bitnami/kafka/data

    It stores the actual message data of the Kafka component.

    config/kraft/opt/bitnami/kafka/config/kraft

    It stores configuration files of the Kafka component.

    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