area51/thingspeak
The area51/thingspeak image contains our branch of the open source ThingSpeak IoT platform.
Note: This is still under development so will not be working correctly just yet.
Requirements
- mysql 5.5
Usage
You'll need two images, a database and the application running. Note you may have to wait a minute when running the database until it's up and running.
docker run --name thingspeakdb -e MYSQL_ROOT_PASSWORD=speak -d mysql:5.5 docker run -d --name=thingspeakapp \ --link thingspeakdb \ -e DB_PASSWORD=speak \ -e DB_HOST=thingspeakdb \ -p 80:80 \ area51/thingspeak
Persisting data
Now this will work however when the database container is restarted then you'll not have any data, so it's best to create a volume based on the official mysql image documentation:
docker run --name thingspeakdb \ -v /my/own/datadir:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=speak \ -d mysql:5.5
First time install
If this is the first time you've run the images, the database will be empty so we have to initialise it once both images are running:
docker exec -it thingspeak rake db:create docker exec -it thingspeak rake db:schema:load
You can then access the application by going to http://localhost/
Environment Variables
Name | Default | Description |
---|---|---|
DB_USER | root | Database user |
DB_PASSWORD | thingspeak | Database password |
DB_NAME | thingspeak | Database name |
DB_HOST | thingspeak | Database host name |
DB_PORT | 3306 | Database port |
DB_POOL | 5 | Database pool size |
HTTP_PORT | 80 | Http port |
IPV6 | no | By default this will bind to the container's IPv4 address only. If you want to to bind to both IPv4 & IPv6 addresses then set this to "true" |