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

Annotation of /fenglin/README.md

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.14 - (hide annotations)
Sat Jan 10 06:48:17 2026 UTC (2 months ago) by sysadm
Branch: MAIN
Changes since 1.13: +86 -13 lines
Content type: text/markdown
Update README

1 sysadm 1.1 # LeafOK BBS
2    
3 sysadm 1.12 Chinese version: [README.zh_CN.md](README.zh_CN.md)
4 sysadm 1.1
5 sysadm 1.14 ## 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 sysadm 1.12 ## Program Overview
28 sysadm 1.1
29 sysadm 1.12 **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     - Optional Telnet access for login, article viewing, games, etc. (see [lbbs](https://github.com/leafok/lbbs) for details)
38    
39     **Demo site:** https://fenglin.info/bbs/
40    
41     ## Installation and Usage Instructions
42    
43 sysadm 1.14 ### 1. Prerequisites and Required Libraries
44     - **PHP 8.2+** and **MySQL 8.4+** installed
45     - Install Composer using your package manager (e.g., `apt`, `yum`, or from [getcomposer.org](https://getcomposer.org/))
46     - Run the following command in the project root directory:
47     ```bash
48     composer install --prefer-dist --no-scripts --no-progress
49     ```
50    
51     ### 2. Database Setup
52 sysadm 1.12 - Import the database structure from `TODO/sql/db_stru.sql`
53 sysadm 1.14 - *(Optional)* Import sample data from `TODO/sql/sample_data.sql`
54 sysadm 1.12 - Test account: `sysop`
55 sysadm 1.14 - Temporary password (must be changed upon first login): `3anzHaNg`
56 sysadm 1.12
57 sysadm 1.14 ### 3. Configuration
58 sysadm 1.12 - Copy files from `TODO/conf/` directory to `conf` directory (create if it doesn't exist)
59     - Modify the following files:
60 sysadm 1.13 - Site information: Edit `conf/site.conf.php`
61 sysadm 1.12 - Database connection: Edit `conf/db_conn.conf.php`
62     - Email sending: Edit `conf/smtp.conf.php` (supports both SMTP and local sendmail)
63    
64 sysadm 1.14 ### 4. Site Customization
65 sysadm 1.12 - Modify `lib/common.inc.php` for site-specific configurations
66    
67 sysadm 1.14 ### 5. Directory Permissions
68 sysadm 1.12 - Create directories (if they don't exist):
69     - `bbs/cache`
70     - `bbs/upload`
71     - `stat`
72     - Ensure the web server user has write permissions for:
73     - `bbs/cache`
74     - `bbs/upload`
75     - `gen_ex`
76     - `stat`
77    
78 sysadm 1.14 ### 6. Account Creation
79 sysadm 1.12 - Create administrator and initial accounts through the registration page
80     - *Note:* Involves multiple database tables; not recommended to create directly in the database
81    
82 sysadm 1.14 ### 7. Database Setup (Additional)
83 sysadm 1.12 - Add administrator accounts, categories, and sections in the database
84     - Relevant tables: `admin_config`, `section_class`, `section_config`
85    
86 sysadm 1.14 ### 8. Management and Background Jobs
87 sysadm 1.12 - Management programs are located in the `manage` directory
88     - Scheduled background tasks require adding to crontab
89    
90 sysadm 1.14 ## Docker Deployment
91    
92     ### Quick Start
93     ```bash
94     # Clone the repository
95     git clone https://github.com/leafok/leafok_bbs.git
96     cd leafok_bbs
97    
98     # Start with Docker Compose
99     docker compose up -d
100     ```
101 sysadm 1.12
102     ### Build from Source
103     ```bash
104     docker compose up --build -d
105     ```
106    
107 sysadm 1.14 ### Using Pre-built Images
108 sysadm 1.12 ```bash
109 sysadm 1.14 # Pull the latest images from Docker Hub
110 sysadm 1.12 docker compose pull
111 sysadm 1.14
112     # Start the containers
113     docker compose up -d
114     ```
115    
116     ### Configuration for Docker
117     1. The web application will be available at `http://localhost:8080`
118     2. Configuration files should be placed in `conf/` directory (mounted to `/var/www/html/conf` in the container)
119     3. To modify configuration:
120     - Copy files from `TODO/conf/` to `conf/` directory
121     - Edit the configuration files as needed
122     - Restart the container: `docker compose restart`
123    
124     ### Docker Compose Services
125     - **web**: Apache HTTP Server with PHP 8.2
126     - **db**: MySQL 8.4 database
127     - **phpmyadmin**: Database management interface (optional, available at `http://localhost:8081`)
128    
129     ### Common Docker Commands
130     ```bash
131     # View logs
132     docker compose logs -f
133    
134     # Stop containers
135     docker compose down
136    
137     # Rebuild and restart
138     docker compose up --build -d
139    
140     # Access container shell
141     docker compose exec web bash
142 sysadm 1.12 ```
143 sysadm 1.1
144 sysadm 1.14 ### Persistent Data
145     - Database data is stored in a Docker volume (`leafok_bbs_db_data`)
146     - Uploaded files and cache are stored in mounted host directories
147 sysadm 1.1
148 sysadm 1.12 ## Copyright Information
149     Copyright (C) 2004-2026 Leaflet <leaflet@leafok.com>
150 sysadm 1.1
151 sysadm 1.12 ## License
152     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