---
title: Installing MBSE BBS in Docker
date: 2018-09-04 13:07:50
thumbnail: /images/mbse.png
categories:
- Docker
- MBSE BBS
tags:
- Docker
- BBS
---
The following is the instructions on how to install [MBSE BBS](http://sourceforge.net/projects/mbsebbs) in a Docker Container. These instructions have been compiled using Docker on a Raspberry Pi. I'll provide instructions in another post on how to get Docker installed.

My image is available in my Docker Registry and can be obtained by using `docker pull registry.leenooks.net/leenooks/mbse:1.0.7.8`. You can use this image to run a container using `docker run`, or you can use it in a *swarm*, if you have multiple hosts. I actually use Docker Swarm myself.

**NOTE**: Its important that you separate "data" from the "application" and provide a persistent storage path for your container (otherwise if you recreate your container, you'll loose your data!). On my setup my container persistent storage is storage in `/srv/docker/[CONTAINER]/data`. In the parent path (/srv/docker/[CONTAINER]) I keep my scripts and tools for managing the container and starting it - and since I use Docker Swarm, that is where my `.yml` file is.

## Preparation
1. Download your favourite Linux OS and install
2. Install Docker
3. Pull the MBSE Image with

 ```
 docker pull registry.leenooks.net/leenooks/mbse:1.0.7.9
 ```

4. Create your persistent storage destination

 ```
 mkdir -p /srv/docker/mbse/data
 ```
## Starting
5. Start your container with

  ```
  docker run -d --rm -p 10023:23 -v /srv/docker/mbse/data:/opt/mbse/data --name=mbse registry.leenooks.net/leenooks/mbse:1.0.7.9
  ```
  The first time the container starts, it will create sub directories and fill your data directory.

  The options on this command line are:

  <table><tr><th style="width: 20%">Option</th><th>Reason</th></tr><tr><td>-d</td><td>Run the container in the background</td></tr><tr><td>-p</td><td>Port mapping from the host:container. So using 10023:23 will mean any incoming connections on the *host* to port 10023 will be sent to the *container* on port 23. This will enable you to telnet into your MBSE.</td></tr><tr><td>-rm</td><td>Means the container will be destroyed when it is stopped. (No problem if *-v* is used below.</td></tr><tr><td>-v</td><td>Volume mapping from the host:container. A value of /srv/docker/mbse/data:/opt/mbse/data means that any data in the *container* written to /opt/mbse/data, will be stored on the *host* /srv/docker/mbse/data.</td></tr></table>

  There are other options you may prefer to use, for example, instead of `--rm`, you may want to use `--restart=always`.

## Configuration
6. Now your container is running, jump into it and start configuring.

  ```
  docker exec -itu mbse mbse /bin/bash
  bin/mbsetup
  ```

If you need any help, [login](/2018/08/31/chinwag/) to my BBS and send me a message, or if you use another BBS, or a Sysop of a BBS and connected to one of the networks I'm connected to, you can send me a Netmail. See the list of [networks](/networks) that I'm already connected to.
