Hi all,
I've recently played with Docker [1] and OpenBSC (osmo-nitb). The result is osmonitb-docker:
https://github.com/shamrin/osmonitb-docker
What you can do with it? You can use it to hack on OpenBSC under Mac or even Windows (there's Vagrant+VirtualBox config). Or you can try to streamline deployment and testing on production hardware. I've tested it under Mac working together with Fairwaves UmSITE hardware (running OsmoBTS). SMS and phone calls all work.
Does it make sense to submit osmonitb-docker as a patch to OpenBSC?
Quick start, under real or virtual Ubuntu 12.04, with Docker installed:
git clone https://github.com/shamrin/osmonitb-docker.git cd osmonitb-docker docker build -rm -t shamrin/osmonitb . docker run -v $HOME/db:/var/db -i -t -p 3002:3002 -p 3003:3003 -p 30000:30000/udp -p 30001:30001/udp -p 30002:30002/udp -p 30003:30003/udp -p 30004:30004/udp -p 30005:30005/udp -p 30006:30006/udp shamrin/osmonitb start-nitb -i 10.0.0.10 GSM1800 10 20
(replace last 4 arguments as necessary)
Alexey
Hi Alexey,
On Sun, Feb 16, 2014 at 8:12 PM, Alexey Shamrin shamrin@gmail.com wrote:
Does it make sense to submit osmonitb-docker as a patch to OpenBSC?
Good stuff.
It would be great to have this documented at the Osmocom wiki at least. You could request a login from Harald Welte to edit the wiki.
Quick start, under real or virtual Ubuntu 12.04, with Docker installed:
How big is the resulting docker file?
Hi Alexander,
On Sun, Feb 16, 2014 at 11:00 PM, Alexander Chemeris alexander.chemeris@gmail.com wrote:
How big is the resulting docker file?
`docker images` reports 467.8 Mb virtual size. But I have spent zero time optimizing it, because Docker is usually smart about sending only changed parts when updating the image. No need to transfer basic Ubuntu image bytes. Still, it could be made much lower. [0] E.g., Docker people managed to shrink PostgreSQL image into less than 20 Mb. [1]
[0]: With one caveat. Starter script currently patches openbsc and recompiles it before running. So it currently requires full build environment in the image. The proper solution is to add a config setting for an external OpenBSC IP address, because Docker put its VMs behind the NAT by default. Here's starter script: https://github.com/shamrin/osmonitb-docker/blob/master/start-nitb [1]: http://www.slideshare.net/jerome42/create-lightweight-docker-containers-with...
Alexey
Alexey Shamrin wrote:
The proper solution is to add a config setting for an external OpenBSC IP address, because Docker put its VMs behind the NAT by default.
Ha, no, I don't think that's a proper solution.
Why don't you just configure the virtual network without NAT?
//Peter
On Mon, Feb 17, 2014 at 6:23 PM, Peter Stuge peter@stuge.se wrote:
The proper solution is to add a config setting for an external OpenBSC IP address, because Docker put its VMs behind the NAT by default.
Ha, no, I don't think that's a proper solution. Why don't you just configure the virtual network without NAT?
My OpenBSC container has to be available to OsmoBTS running on a another physical PC (Fairwaves UmSITE). As far as I can tell, Docker doesn't yet support connecting containers to a physical network interface. There's separate script that could probably help, but I haven't yet tried it:
https://github.com/jpetazzo/pipework#connect-a-container-to-a-local-physical...
Alexey