Docker for Mac is for these tests configured to use 2 CPU’s and 3Gb RAM in both cases. If configured to use less, the performance numbers were noticable worse! Docker prod container. For comparison here is performance when running with code built into container.
Docker For Mac has really changed how I work: I now use it for all my linux-related developments. The integration is OS X is really well done and it’s really perfect for a development environment.
The only problem is that Docker For Mac uses a file called
Docker.qcow2
that takes more and more disk space as time passes (mine got to 20GB). Deleting images or containers does not decrease the size of this file. The issue has been reported several times (like here for instance), but no official fix exists yet, even with this week’s release of Docker 1.12.1.After discussing with a Docker employee working on Docker For Mac and Docker For Windows in Paris during last Docker Paris Meetup, it seems that the only solution right now is to simply delete this file. However deleting it will also remove all your containers and images.
Here is a small script that will do that for you, and you can give it some images that you would like to keep as arguments.
IoT PaaS Demo We recommend to use ThingsBoard Professional Edition Live Demo for the seamless experience and the newest features from the latest source code! Save time on the installation and configuration with several pre-provisioned devices, dashboards available in the cloud and pre-integrated email server to create new customer accounts and users. |
- Troubleshooting
This guide will help you to install and start ThingsBoard using Docker on Linux or Mac OS.
Prerequisites
Running
Depending on the database used there are three type of ThingsBoard single instance docker images:
- thingsboard/tb-postgres - single instance of ThingsBoard with PostgreSQL database.Recommended option for small servers with at least 1GB of RAM and minimum load (few messages per second). 2-4GB is recommended.
- thingsboard/tb-cassandra - single instance of ThingsBoard with Cassandra database.The most performant and recommended option but requires at least 4GB of RAM. 8GB is recommended.
- thingsboard/tb - single instance of ThingsBoard with embedded HSQLDB database.Note: Not recommended for any evaluation or production usage and is used only for development purposes and automatic tests.
In this instruction
thingsboard/tb-postgres
image will be used. You can choose any other images with different databases (see above).Execute the following command to run this docker directly:Where:
docker run
- run this container-it
- attach a terminal session with current ThingsBoard process output-p 9090:9090
- connect local port 9090 to exposed internal HTTP port 9090-p 1883:1883
- connect local port 1883 to exposed internal MQTT port 1883-p 5683:5683
- connect local port 5683 to exposed internal COAP port 5683-v ~/.mytb-data:/data
- mounts the host’s dir~/.mytb-data
to ThingsBoard DataBase data directory-v ~/.mytb-logs:/var/log/thingsboard
- mounts the host’s dir~/.mytb-logs
to ThingsBoard logs directory--name mytb
- friendly local name of this machine--restart always
- automatically start ThingsBoard in case of system reboot and restart in case of failure.thingsboard/tb-postgres
- docker image, can be alsothingsboard/tb-cassandra
orthingsboard/tb
After executing this command you can open
http://{your-host-ip}:9090
in you browser (for ex. http://localhost:9090
). You should see ThingsBoard login page.Use the following default credentials:- Systen Administrator: [email protected] / sysadmin
- Tenant Administrator: [email protected] / tenant
- Customer User: [email protected] / customer
![Does Docker For Mac Use All Ram Does Docker For Mac Use All Ram](https://i.stack.imgur.com/6iWiW.png)
You can always change passwords for each account in account profile page.
Detaching, stop and start commands
You can detach from session terminal with
Ctrl-p
Ctrl-q
- the container will keep running in the background.To reattach to the terminal (to see ThingsBoard logs) run:
To stop the container:
To start the container:
Upgrading
In order to update to the latest image, execute the following commands:
NOTE: if you use different database change image name in all commands from
thingsboard/tb-postgres
to thingsboard/tb-cassandra
or thingsboard/tb
correspondingly.NOTE: replace host’s directory
~/.mytb-data
with directory used during container creation.Troubleshooting
DNS issues
Note If you observe errors related to DNS issues, for example
You may configure your system to use Google public DNS servers. See corresponding Linux and Mac OS instructions.
Next steps
- Getting started guides - These guides provide quick overview of main ThingsBoard features. Designed to be completed in 15-30 minutes.
- Connect your device - Learn how to connect devices based on your connectivity technology or solution.
- Data visualization - These guides contain instructions how to configure complex ThingsBoard dashboards.
- Data processing & actions - Learn how to use ThingsBoard Rule Engine.
- IoT Data analytics - Learn how to use rule engine to perform basic analytics tasks.
- Hardware samples - Learn how to connect various hardware platforms to ThingsBoard.
- Advanced features - Learn about advanced ThingsBoard features.
- Contribution and Development - Learn about contribution and development in ThingsBoard.