/[LeafOK_CVS]/fenglin/README.md
ViewVC logotype

Contents of /fenglin/README.md

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.16 - (show annotations)
Thu Jan 22 05:17:26 2026 UTC (7 weeks, 5 days ago) by sysadm
Branch: MAIN
Changes since 1.15: +8 -10 lines
Content type: text/markdown
Update

1 # LeafOK BBS
2
3 Chinese version: [README.zh_CN.md](README.zh_CN.md)
4
5 ## Table of Contents
6 - [Program Overview](#program-overview)
7 - [Installation and Usage Instructions](#installation-and-usage-instructions)
8 - [Prerequisites and Required Libraries](#1-prerequisites-and-required-libraries)
9 - [Database Setup](#2-database-setup)
10 - [Configuration](#3-configuration)
11 - [Site Customization](#4-site-customization)
12 - [Directory Permissions](#5-directory-permissions)
13 - [Account Creation](#6-account-creation)
14 - [Additional Database Setup](#7-database-setup-additional)
15 - [Management and Background Jobs](#8-management-and-background-jobs)
16 - [Docker Deployment](#docker-deployment)
17 - [Quick Start](#quick-start)
18 - [Build from Source](#build-from-source)
19 - [Using Pre-built Images](#using-pre-built-images)
20 - [Configuration for Docker](#configuration-for-docker)
21 - [Docker Compose Services](#docker-compose-services)
22 - [Common Docker Commands](#common-docker-commands)
23 - [Persistent Data](#persistent-data)
24 - [Copyright Information](#copyright-information)
25 - [License](#license)
26
27 ## Program Overview
28
29 **Development Language:** PHP (8.2) + MySQL (8.4)
30 **Platform:** Linux / Windows
31 **License:** Source code released under GNU GPL license
32
33 **Features:**
34 - Web-based article browsing, posting, searching, and other basic functions
35 - Support for multiple categories and sections, each with discussion areas, digest areas, and featured areas
36 - Comprehensive moderator management support
37 - **Advanced Search Capabilities:**
38 - Solr-powered full-text search with Chinese language support
39 - **Modern Architecture:**
40 - Refactored Lightweight Markup Language (LML) renderer with improved performance
41 - User timezone support for localized date/time display
42 - Theme support for major features
43 - Optional Telnet access for login, article viewing, games, etc. (see [lbbs](https://github.com/leafok/lbbs) for details)
44
45 **Demo site:** https://fenglin.info/bbs/
46
47 ## Installation and Usage Instructions
48
49 ### 1. Prerequisites and Required Libraries
50 - **PHP 8.2+** and **MySQL 8.4+** installed
51 - Install Composer using your package manager (e.g., `apt`, `yum`, or from [getcomposer.org](https://getcomposer.org/))
52 - Run the following command in the project root directory:
53 ```bash
54 composer install --prefer-dist --no-scripts --no-progress
55 ```
56
57 ### 2. Database Setup
58 - Import the database structure from `TODO/sql/db_stru.sql`
59 - *(Optional)* Import sample data from `TODO/sql/sample_data.sql`
60 - Test account: `sysop`
61 - Temporary password (must be changed upon first login): `3anzHaNg`
62
63 ### 3. Configuration
64 - Copy files from `TODO/conf/` directory to `conf` directory (create if it doesn't exist)
65 - Modify the following files:
66 - Site information: Edit `conf/site.conf.php`
67 - Database connection: Edit `conf/db_conn.conf.php`
68 - Email sending: Edit `conf/smtp.conf.php` (supports both SMTP and local sendmail)
69 - **Solr search** (optional): Edit `conf/solr.conf.php` if using Solr for advanced search features
70 - Default configuration assumes Solr running on `localhost:8983` with core `lbbs`
71 - Update hostname, port, authentication, and path as needed
72 - Import schema from `TODO/solr/schema.json` into core `lbbs`
73 - Install pecl/solr extension with PIE
74
75 ### 4. Site Customization
76 - Modify `lib/common.inc.php` for site-specific configurations
77
78 ### 5. Directory Permissions
79 - Create directories (if they don't exist):
80 - `bbs/cache`
81 - `bbs/upload`
82 - `stat`
83 - Ensure the web server user has write permissions for:
84 - `bbs/cache`
85 - `bbs/upload`
86 - `gen_ex`
87 - `stat`
88
89 ### 6. Account Creation
90 - Create administrator and initial accounts through the registration page
91 - *Note:* Involves multiple database tables; not recommended to create directly in the database
92
93 ### 7. Database Setup (Additional)
94 - Add administrator accounts, categories, and sections in the database
95 - Relevant tables: `admin_config`, `section_class`, `section_config`
96
97 ### 8. Management and Background Jobs
98 - Management programs are located in the `manage` directory
99 - Scheduled background tasks require adding to crontab
100
101 ## Docker Deployment
102
103 ### Quick Start
104 ```bash
105 # Clone the repository
106 git clone https://github.com/leafok/leafok_bbs.git
107 cd leafok_bbs
108
109 # Start with Docker Compose
110 docker compose up -d
111 ```
112
113 ### Build from Source
114 ```bash
115 docker compose up --build -d
116 ```
117
118 ### Using Pre-built Images
119 ```bash
120 # Pull the latest images from Docker Hub
121 docker compose pull
122
123 # Start the containers
124 docker compose up -d
125 ```
126
127 ### Configuration for Docker
128 1. The web application will be available at `http://localhost:8080`
129 2. Configuration files should be placed in `conf/` directory (mounted to `/var/www/html/conf` in the container)
130 3. To modify configuration:
131 - Copy files from `TODO/conf/` to `conf/` directory
132 - Edit the configuration files as needed
133 - Restart the container: `docker compose restart`
134
135 ### Docker Compose Services
136 - **web**: Apache HTTP Server with PHP 8.2
137 - **db**: MySQL 8.4 database
138 - **phpmyadmin**: Database management interface (optional, available at `http://localhost:8081`)
139
140 ### Common Docker Commands
141 ```bash
142 # View logs
143 docker compose logs -f
144
145 # Stop containers
146 docker compose down
147
148 # Rebuild and restart
149 docker compose up --build -d
150
151 # Access container shell
152 docker compose exec web bash
153 ```
154
155 ### Persistent Data
156 - Database data is stored in a Docker volume (`leafok_bbs_db_data`)
157 - Uploaded files and cache are stored in mounted host directories
158
159 ## Copyright Information
160 Copyright (C) 2001-2026 Leaflet <leaflet@leafok.com>
161
162 ## License
163 This program is free software; you can redistribute it and/or modify it under the terms of the [GNU General Public License](LICENSE) as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1