elestio/nodebb
Nodebb, verified and packaged by Elestio
10K+
A better community platform for the modern web.
NodeBB is next-generation forum software – powerful and easy to use.
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.
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
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"
Variable | Value (example) |
---|---|
SOFTWARE_VERSION_TAG | latest |
DOMAIN | your.domain |
REDIS_PASSWORD | your-password |
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
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.
docker pull elestio/nodebb