meguca v1.1.8
meguca
anonymous realtime imageboard with user-created boards focused on high performance, free speech and transparent moderation
Platforms: Linux, Docker
License: GNU AGPL
Runtime dependencies
- PostgresSQL >= 10.0
Docker
Meguca can be deployed in a self-contained Docker container.
First, run
git clone git://github.com/bakape/meguca.gitSecond, navigate to the folder that was just created with
cd megucaThen, install Docker and Docker Compose and run
docker-compose build
docker-compose up -dFor more information refer to the Docker Compose docs.
Update
If you ever want to update meguca to the newest version, stop the container with
docker-compose downThen, pull the changes with
git pull originFinally, rebuild and start the container with
docker-compose build
docker-compose up -dBuilding from source
Native installation.
For installing meguca directly onto a server follow the steps bellow.
A reference list of commands can be found in ./docs/installation.md
Build dependencies
- Go >=1.13 (for building server)
- Node.js >=5.0 (for building client)
- C11 compiler
- make
- pkg-config
- pthread
- ffmpeg 3.2+ libraries (libavcodec, libavutil, libavformat, libswscale) compiled with: libvpx libvorbis libopus libtheora libx264 libmp3lame
- OpenCV >= 2
- libgeoip
- git
NB: Ubuntu patches to ffmpeg on some Ubuntu versions <19.10 break image processing. In that case please compile from unmodified ffmpeg sources using:
sudo apt build-dep ffmpeg
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
git checkout n4.1
./configure
make -j`nproc`
sudo make installLinux and OSX
- Run
make
Setup
Deployment
meguca can be started in debug mode simply with ./meguca.
Configurations are split between meguca instance configurations
and server instance configurations, which are required to start
the server and connect to the database.
The meguca instance configurations are stored in the database, but
server instance configurations are optionally loaded from a config.json
file on server start.
A sample configuration file can be found under docs/config.json.
Documentation for this file is available under docs/config.jsonc.
It is recommended to serve meguca behind a reverse proxy like NGINX or Apache
with properly configured TLS settings. A sample NGINX configuration file can be
found in docs/.
Initial instance configuration
- Login into the "admin" account via the infinity symbol in the top banner with the password "password"
- Change the default password
- Create a board from the administration panel
- Configure server from the administration panel
Development
- See
./docsfor more documentation make serverandmake clientbuild the server and client separatelymake watchwatches the file system for changes and incrementally rebuilds the clientmake cleanremoves files from the previous compilationmake {test,test_no_race,test_docker}run regular, without data race detection and Dockerized test suites, respectively- To run server unit tests (unless Dockerized) add database creation rights to your PostgreSQL role
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
10 years ago