vrijdag 6 maart 2015

HOW-TO: build a cheap vnc environment with docker

HOW-TO: build a cheap vnc environment with docker

USE-CASE: 
A docker container providing a desktop environment which can be used with any vnc client. 
But with  GUACAMOLE (also a docker container) any (hml5) browser can now connect and use this desktop environment!

HOW-TO:
Install an image with a desktop environment, accessible with a vnc-client:

docker vnc server


A Mac has a build-in vnc client, access it with safari:

And let it connect with the docker host:

And use the password 'vnc-password'


Thats simple, but you need a vnc client. Lets stream the desktop environment with html5 to a browser, so no vnc client needs to be installed. 
we only need a browser!


Derquinse Gist.GitHub Gadget

Derquinse Gist.GitHub Gadget

Derquinse Gist.GitHub Gadget



And now you can access and use the desktop in a browser, no vnc client necessary! 

Oracle Express Edition 11g Release 2 on Ubuntu 14.04.1 LTS

Oracle Express Edition 11g Release 2 on Ubuntu 14.04.1 LTS

This is a modified Dockerfile with a working Oracle XE 11g.

Installation
$ docker pull marcelmaatkamp/docker-oracle-xe-11g
Run with 22 and 1521 ports opened:  
$ docker run -d --name oracle -p 49160:22 -p 49161:1521 marcelmaatkamp/docker-oracle-xe-11g
Connect database with following setting: 
hostname: docker host ip  port: 49161  sid: XE  username: system  password: oracle
Password for SYS & SYSTEM
  oracle
Login by SSH :  $ ssh root@localhost -p 49160 password: admin

ESP8266 Crosstool-NG as Docker image

CrossTool-NG
ESP8266
ESP8266 is a complete and self-contained Wi-Fi network solutions that can carry software applications, or through Another application processor uninstall all Wi-Fi networking capabilities. ESP8266 when the device is mounted and as the only application of the application processor, the flash memory can be started directly from an external Move. Built-in cache memory will help improve system performance and reduce memory requirements. Another situation is when wireless Internet access assume the task of Wi-Fi adapter, you can add it to any microcontroller-based design, the connection is simple, just by SPI / SDIO interface or central processor AHB bridge interface. Processing and storage capacity on ESP8266 powerful piece, it can be integrated via GPIO ports sensors and other applications specific equipment to achieve the lowest early in the development and operation of at least occupy system resources. The ESP8266 highly integrated chip, including antenna switch balun, power management converter, so with minimal external circuitry, and includes front-end module, including the entire solution designed to minimize the space occupied by PCB. The system is equipped with ESP8266 manifested leading features are: energy saving VoIP quickly switch between the sleep / wake patterns, with low-power operation adaptive radio bias, front-end signal processing functions, troubleshooting and radio systems coexist characteristics eliminate cellular / Bluetooth / DDR / LVDS / LCD interference.
Online community http://www.esp8266.com and https://nurdspace.nl/ESP8266 supporting all aspects of the ESP8266 and ESP8266EX. For more info see the wikihttps://github.com/esp8266/esp8266-wiki/wiki
This is a prebuild toolchain with every step from:
To start this image simply use:
$ docker run -ti --privileged marcelmaatkamp/esp8266-crosstool-ng:latest /bin/bash
Then test your setup by uploading the example code:
$ cd /opt/Espressif/source-code-examples/blinky
$ make ESPPORT=/dev/ttyUSB0 flash
The nodemcu firmware can be found in:
/opt/Espressif/nodemcu-firmware$ find . -name '*.bin'
./pre_build/0.9.2/512k-flash/nodemcu_512k_20141212.bin
./pre_build/0.9.2/512k-flash/nodemcu_512k_20141219.bin
./pre_build/0.9.2/512k-flash/blank512k.bin
./pre_build/0.9.2/1M-flash/nodemcu_1M_20141219.bin
./pre_build/0.9.2/4M-flash/esp_init_data_default.bin
./pre_build/0.9.2/4M-flash/eagle.app.v6.flash.bin
./pre_build/0.9.2/4M-flash/blank.bin
./pre_build/0.9.2/4M-flash/eagle.app.v6.irom0text.bin
./pre_build/0.9.2/2M-flash/esp_init_data_default.bin
./pre_build/0.9.2/2M-flash/eagle.app.v6.flash.bin
./pre_build/0.9.2/2M-flash/nodemcu_2M_20141219.bin
./pre_build/0.9.2/2M-flash/blank.bin
./pre_build/0.9.2/2M-flash/eagle.app.v6.irom0text.bin
./pre_build/0.9.4/512k-flash/nodemcu_512k_20141222.bin
./pre_build/0.9.4/512k-flash/blank512k.bin
To flash:
$ ./esptool.py --port /dev/ttyUSB0 write_flash 0x00000 0.9.4/512k-flash/nodemcu_512k_20141222.bin
To validate:
screen /dev/ttyUSB0 9600

>> node.restart();
NodeMcu 0.9.4 build 20141222  powered by Lua 5.1.4
>>

dinsdag 24 februari 2015

This is a working example how to start the open-source Cluster Manager Apache Mesos in docker with RabbitMQ as example application.

Step 1: Start  Zookeeper 

Step 2: Start Mesos Master node 

Step 3a: Start Mesos Slave node 01, with docker over local unix socket, or..

Step 3b: Start Mesos Slave node 01, with docker over tcp socket

Step 4: Start Marathon to deploy docker applications in the cluster

Step 5: Generate a application deployment json, in this case for RabbitMQ

Step 6: Upload the deployment json into the cluster, thereby starting RabbitMQ

If everything went well the following pages are active:
  • http://:5050
  • http://:8080
To check where the managment page of RabbitMQ can be found, check with docker which external port is being mapped:

$ docker ps
e20b7e044e17 rabbitmq:management 0.0.0.0:31002->5672/tcp, 0.0.0.0:31003->15672/tcp mesos-4d56e476-b13e-4ac7-87ac-1b292f7cf96b

The management page can be found at:







woensdag 24 juli 2013

Parallel and Concurrent Programming in Haskell

For a long time, the programming community has known that programming with threads and locks is hard. It often requires an inordinate degree of expertise even for simple problems and leads to programs that have faults that are hard to diagnose. Still, threads and locks are general enough to express everything we might need to write, from parallel image processors to concurrent web servers, and there is an undeniable benefit in having a single general API. However, if we want to make programming concurrent and parallel software easier, we need to embrace the idea that different problems require different tools; a single tool just doesn’t cut it. Image processing is naturally expressed in terms of parallel array operations, whereas threads are a good fit in the case of a concurrent web server. So in Haskell, we aim to provide the right tool for the job, for as many jobs as possible. If a job is found for which Haskell doesn’t have the right tool, then we try to find a way to build it.

via Delicious http://chimera.labs.oreilly.com/books/1230000000929/index.html

woensdag 22 mei 2013

joshdmiller/ng-boilerplate · GitHub

gBoilerplate is designed to make life easy by providing a basic framework with which to kickstart AngularJS projects. It contains a best-practice directory structure to ensure code reusability and maximum scalability. ngBoilerplate also comes prepackaged with the most popular design frameworks around: Twitter Bootstrap, UI Bootstrap, Font Awesome, and LESS. Lastly, it contains a sophisticated Grunt-based build system to ensure maximum productivity. All you have to do is clone it and start coding!

via Delicious https://github.com/joshdmiller/ng-boilerplate

woensdag 8 mei 2013

Marionette.js – A scalable and composite application architecture for Backbone.js

Backbone.Marionette is a composite application library for Backbone.js that aims to simplify the construction of large scale JavaScript applications. It is a collection of common design and implementation patterns found in the applications that we have been building with Backbone, and includes pieces inspired by composite application architectures, event-driven architectures, messaging architectures, and more.

via Delicious http://marionettejs.com/