Introducing our new CEO Don Johnson - Read More

elestio/nodebb

Verified Publisher

By Elestio

Updated about 8 hours ago

Nodebb, verified and packaged by Elestio

Image
Content Management System
Integration & Delivery
Security
5

10K+

elest.io

DiscordElestio examplesBlog

NodeBB, verified and packaged by Elestio

A better community platform for the modern web.

NodeBB is next-generation forum software – powerful and easy to use.

nodebb

Deploy a fully managed NodeBB on elest.io if you want automated backups, reverse proxy with SSL termination, firewall, automated OS & Software updates, and a team of Linux experts and open source enthusiasts to ensure your services are always safe, and functional.

deploy

Why use Elestio images?

  • Elestio stays in sync with updates from the original source and quickly releases new versions of this image through our automated processes.
  • Elestio images provide timely access to the most recent bug fixes and features.
  • Our team performs quality control checks to ensure the products we release meet our high standards.

Usage

Git clone

You can deploy it easily with the following command:

git clone https://github.com/elestio-examples/nodebb.git

Copy the .env file from tests folder to the project directory

cp ./tests/.env ./.env

Edit the .env file with your own values.

Create data folders with correct permissions

mkdir -p ./nodebb-data
mkdir -p ./nodebb-files
mkdir -p ./nodebb-config

chmod 777 ./nodebb-data
chmod 777 ./nodebb-files
chmod 777 ./nodebb-config

Run the project with the following command

docker-compose up -d

You can access the Web UI at: http://your-domain:4567

Docker-compose

Here are some example snippets to help you get started creating a container.

    version: "3.3"
    services:

        nodebb:
            image: elestio/nodebb:latest
            restart: always
            environment:
                URL: "https://${DOMAIN}"
                DATABASE: "redis"
                DB_NAME: "0"
                DB_HOST: "redis"
                DB_PORT: "8443"
            volumes:
                - ./nodebb-files:/usr/src/app/public/uploads
                # - ./nodebb-config/config.json:/usr/src/app/config.json
                - ./entrypoint.sh:/usr/src/app/entrypoint.sh
            ports:
                - "172.17.0.1:4567:4567"

        redis:
            image: redis
            restart: always
            command: redis-server --requirepass ${REDIS_PASSWORD}
            volumes:
                - ./nodebb-data:/data
            ports:
                - "172.17.0.1:6379:6379"
Environment variables
VariableValue (example)
SOFTWARE_VERSION_TAGlatest
DOMAINyour.domain
REDIS_PASSWORDyour-password

Maintenance

Logging

The Elestio NodeBB Docker image sends the container logs to stdout. To view the logs, you can use the following command:

docker-compose logs -f

To stop the stack you can use the following command:

docker-compose down

Backup and Restore with Docker Compose

To make backup and restore operations easier, we are using folder volume mounts. You can simply stop your stack with docker-compose down, then backup all the files and subfolders in the folder near the docker-compose.yml file.

Creating a ZIP Archive For example, if you want to create a ZIP archive, navigate to the folder where you have your docker-compose.yml file and use this command:

zip -r myarchive.zip .

Restoring from ZIP Archive To restore from a ZIP archive, unzip the archive into the original folder using the following command:

unzip myarchive.zip -d /path/to/original/folder

Starting Your Stack Once your backup is complete, you can start your stack again with the following command:

docker-compose up -d

That's it! With these simple steps, you can easily backup and restore your data volumes using Docker Compose.

Links

Docker Pull Command

docker pull elestio/nodebb