Posts Tagged ‘Docker’

Venez fêter les 6 ans de Docker


Mike Bright continue de promouvoir inlassablement les technologies cloud native sur Grenoble et vous propose de venir souffler les 6 bougies de Docker:

J’y parlerai et surtout montrerai mon utilisation de Docker Engine pour packager des logiciels pour Mageia (dont Docker lui-même !), tant la version stable que celle de développement, sans perturber ma machine hôte.

Venez nombreux !


Creating a Mageia armv7hl docker image for Raspberry 3


Santa Claus has brought a shiny new Raspberry 3B+ to my son for Christmas ! While it came with raspian by default, I didn’t want to change it to Mageia directly even if it’s now available. We wanted to use it as a prod environment for his docker based setup on his laptop. Which is using Mageia 6 and also Mageia containers. So that’s where the fun begins because there is no mageia docker image for armv7hl available and usable on Raspberry. Well, now at least I have one, locally and can document here the way to do it, if you want to reproduce, or you can use mine as well, thanks to the docker hub !

So here are the steps of what I did to obtain mine:

  1. Download the arm reference image for raspberry and uncompress it
  2. Mount it as a loopback mount to access its content
  3. Use the content and QEMU magic to run armv7hl binaries on your x86_64 machine and prepare your environment
  4. Build a chroot on this point containing the minimal set of packages for a Mageia distribution
  5. Create the Docker image out of that file and enjoy using it !

Which means wrt commands:
$ #1

$ cd $HOME/tmp

$ wget

$ xz -d 181217_mga7arm_rpi.img.xz

$ #2

$ sudo kpartx -a 181217_mga7arm_rpi.img

$ sudo mkdir -p /mnt

$ sudo mount /dev/mapper/loop1p2 /mnt

$ #3

$ sudo urpmi qemu-user-static qemu-system-arm

$ sudo systemctl start systemd-binfmt

$ sudo chroot /mnt

# arch     # isn't it magic !!

# urpmi.update -a

$ #4

# cd /home/pi

# export TARGETDIR=../tmp

# mkdir -p $TARGETDIR

# export MGAARCH=armv7hl

# export MGAVER=6

# /usr/sbin/urpmi.addmedia --distrib --urpmi-root "$TARGETDIR"$MGAVER/$MGAARCH

# LANG=C LANGUAGE=C /usr/sbin/urpmi --auto --no-recommends --download-all --allow-force --force --force-key --urpmi-root "$TARGETDIR" basesystem urpmi

# export TMPDM=/tmp

# echo 'NETWORKING=yes' > $TMPDM/network

# install -m 0644 $TMPDM/network "$TARGETDIR"/etc/sysconfig/network

# rm -f $TMPDM/network

# rm -rf "$TARGETDIR/dev" "$TARGETDIR/proc"

# install -m 0755 -d "$TARGETDIR/dev" "$TARGETDIR/proc"

# cat > $TMPDM/resolv.conf << EOF

# install -m 0644 $TMPDM/resolv.conf "$TARGETDIR/etc/resolv.conf"

# rm -f $TMPDM/resolv.conf

# export DATE=2019-01-05

# cat > Dockerfile << EOF
FROM scratch
ADD mageia-$MGAVER-$MGAARCH-$DATE.tar.xz /
LABEL name="Mageia $MGAVER Base Image Arch: $MGAARCH" \
vendor="Mageia" \
license="GPLv2" \
CMD /bin/bash

# tar -C $TARGETDIR -cJf mageia-$MGAVER-$MGAARCH-$DATE.tar.xz .

# chmod 644 Dockerfile mageia-$MGAVER-$MGAARCH-$DATE.tar.xz

$ #5

$ ssh pi@raspberry mkdir docker

$ scp /mnt/home/pi/Dockerfile /mnt/home/pi/mageia-6-armv7hl-*.tar.xz pi@raspberry:docker

$ ssh pi@raspberry

pi$ sudo urpmi docker

pi$ cd docker

pi$ docker build -t mageiaofficial:6-armv7hl .

pi$ docker images
REPOSITORY    TAG            IMAGE ID             CREATED        SIZE
mageiaofficial    6-armv7hl 9b5880971b45    9 seconds ago 386 MB

pi$ docker run -ti mageiaofficial:6-armv7hl /bin/bash
[root@33a7bb3763b5 /]# urpmi tcsh
installing tcsh-6.19.00-5.mga6.armv7hl.rpm from /var/cache/urpmi/rpms
Preparing... #############################################
1/1: tcsh #############################################
[root@33a7bb3763b5 /]# exit

Voilà !!


So now on your raspberry, it’s for you as simple as:

docker pull bcornec/mageia:6-armv7hl

Will soon provide a cauldron one as well 🙂

Meet at DockerCon Europe


This is a late announce, as I wasn’t sure to be able to attend the event, but now everything is on track and I’ll be at DockerCon Europe next week ! One of my proposals has been selected as a 20′ session in the Community Theater and I’m glad as this is the first time I can participate to DockerCon. is using Docker since September 2014, so I’ll be able to celebrate the 3 years of Docker usage in pb after the 10 years of pb itself 😉 More seriously my goal is to promote again Continuous Packaging and demonstrate how beneficial it has been to introduce Docker in the chain, and how my upstream projects, as well as FOSSology are benefiting from it. Come to see that !

Of course, HPE is a platinum sponsor of the event so if you’re one of our customers, I’d also be happy to talk with you around your Docker projects as HPE is sponsoring my travel there ! (Thanks to the management to support again this despite hard times for travel requests and the HPE Next plan). Maybe I’ll still have a job when I’m back … or not 😉 Anyway, will see later as I’m now busy preparing my slides and demo for DockerCon among other stuff. See you there !

Meet at the Open Source Summit NA 2017


Despite difficult times for HPE, I’m still supported by my management to continue to represent HPE during tier 1 Open Source events such as the Open Source Summit North America, held in Los Angeles from the 11th to the 14th of September. Well, of course, because I was accepted as a speaker again !

I’ll lead a round table to cover with panelists whether “Containers are the future of IaaS ?

So as usual, if you are around, I’ll happy to discuss with you around Open Source in general, and the projects I’m involved with in particular such as MondoRescue (yes, there will be a new version soon, now remains to see the definition of soon), (same thing), Redfish, containers, early music or more.

Meet at the RMLL 2017


This year the RMLL are coming back, from the 1st to the 7th of July and in my region, in St Etienne ! And this year, I am not only a speaker, but also a co-track leader for the Server track.

With my talks, You’ll be able to learn about the latest news for MondoRescue,, Docker, Redfish and python-redfish, Mageia and much more from my co-speakers (Ethereum, CMS, Cloud Native app, Unikernels, …) and even more from Keynote speakers as well.

Lodging is now available, so book quickly and let meet us there !

Time to Meet at Hewlett Packard Enterprise Technology & Solutions Summit 2017 !


It’s time again for me to prepare the HPE TSS designed for our presales and channel partners, with some of our the best experts to transfer knowledge on everything HPE !

We have again this year a track dedicated to Open Source and Linux !).

So I’ll be in Cannes from the 6th to the 10th of February to cover:

  • B90 HPE’s Open Source Strategy – Auditorium K – Tuesday 7th of February 2017 – 5:30PM-6:20PM
  • L30-R1 Docker 101 Tutorial – Lab 1 – Wednesday 8th of February 2017 – 8:30AM-10:20AM
  • B91 Docker @ HPE – Ambassadeurs B – Wednesday 8th of February 2017 – 12:00AM-12:50AM
  • L31 Docker Orchestration Tutorial – Lab 1 – Thursday 9th of February 2017 – 8:30AM-10:20AM
  • B94 Docker: technology aspects and tools – Redaction 1 – Thursday 9th of February 2017 – 3:00PM-3:50PM
  • L30-R2 Docker 101 Tutorial – Lab 3 – Thursday 9th of February 2017 – 4:30PM-6:20PM
  • B92 Linux Distributions roadmap – Redaction 3 – Friday 10th of February 2017 – 8:30AM-9:20AM
  • B6 HPE RESTful API and the Redfish standard – Espace Californie – Friday 10th of February 2017 – 12:00AM-12:50AM

Pretty busy week no ?! And you should be able to replay the labs/tutorials on Wednesday afternoon during the OpenLab session in Lab 1.

A lot of sessions are covering Docker related topics this year, and I’m happy with thatas it’s a great techno, even more with the recently announced 1.13 bringing service support to docker-compose !

For those of you wondering why and MondoRescue versions are not published more regularly, that gives you again a hint 😉 Not speaking of the travel for 2 weeks starting the week after this one, and the next event in March in Grenoble, TES, where I’m part of the Event team and that we’ll organize for the 8th time.

See you there to talk of these subjects or something else as you see fit. I’m around the whole week.

Meet during LinuxCon EMEA


After having talked on during the latest LinuxCon NA in Toronto, it’s now time to prepare for LinuxCon EMEA in Berlin.

I’l again talk about packaging, this time “Packaging for Linux Distributions with Docker“. And I’ll also replay the now popular (!) “101 Docker training” I’ve also delivered in Toronto, this time trying to deliver it before the one Jérome Petazzoni from Docker is doing on Docker orchestration, in order to allow for a complete overview of the Docker ecosystem.

Of course I’ll enjoy attending many sessions on various topics, and will see if in EMEA as well Docker Orchestration is the new Eldorado this year (In Toronto many talks and booth were dedicated to that theme). At least my colleague Mike Bright will cover it well !

See you around !

Docker 101 tutorial for the masses


I already mentioned last year that I initiated a tutorial to help discovering Docker. This was based on the work done in the Docker Dojo during a Grenoble Docker Meetup. It has evolved to really become a nice tutorial that you can easily play on your own, with your Linux laptop, using a trial and error approach. We’ve got lots of positive feedback on it, such as the one expressed publicly by Herman Robers.

Of course, the best is when we deliver it, as it creates a lot of interactions between trainers and trainees due to that 😉 But it’s still valuable alone. I’ve delivered it during the latest LinuxCon NA, and will replay it for LinuxCon EMEA on the 7th of October.

Now that you are keen to try it yourself, I can give you the URL: ! Enjoy and feel free to make pull requests.

Meet again next week in Paris and at LinuxCon NA 2016 in Toronto


I’m just back from an HPE Event (the ETSS in Gothenburg, Sweden) and will soon have to start the next ones.

First, I’ll be this week in Paris to talk during a MySQL Meetup to cover automatic deployment, in particular with Redfish, images of reference (and a bit of MondoRescue) and automation (ansible e.g.) for DBA.

Then I’m again lucky this year to be retained as a speaker for the upcoming LinuxCon North America which will be in Toronto, Canada from the 22nd of August to the 27th. I’ll have a session on Continuous Packaging, mandatory for DevOps and a 3 hour Initiation Lab on Docker. Interestingly enough at the same time, Jérôme Petazzoni, Docker, will do one on Swarm !! Maybe we should coordinate and make them one after the other (I’d like to attend his Lab BTW !!)

I have now put all my lab material that I do for HPE on GitHub, to make it easier for attendees to report errors, and for others to use them and learn. I have content for Docker (Done with René Ribaud, Yann Allandit, Michael Bright), Git (Done with Clément Poulain), Redfish (Originally written by François Donzé and done with René Ribaud) and soon for Ironic.

Hope to be able to meet with you here or there !

Fosdem is here again !


In addition to next week event participation for HPE in Cannes, I’ll be at Fosdem the coming week-end in Brussels. And I’m so happy to be able to be there again, as it has been since 2012 that i’ve not participated.

This time, it’s not MondoRescue or related. But the presentation that was selected is part of the Distributions dev room. The title is “Building Linux distribution packages with Docker”. I’ve been using Docker to help in building packages since a long time now, and latest version is now supporting it pretty well to help me package my upstream projects. But I want to cover a different aspect.

Docker has brought an ease of use without comparison with VMs typically to build native upstream distribution packages. Where before it was needed to
launch a complete environment, copy the sources into it, invoke the build tools to create the packages and then copy them back to the host, Docker has made all these steps much easier and straight forward, allowing for more rapid package production and automation.

This presentation will show a detailed use case for building packages for both Mageia and Fedora with their respective bm or koji tools encapsulated in Docker containers. It should help any upstream packager adopt a similar approach to make his packaging task a breathe.

Will be there Saturday the 30th of January (my 20′ talk is at 11:30 in K.4.201) and I’ll stay till Sunday early afternoon. Feel free again to catch me and discuss. When not in my talk, I’ll be in other sessions and also around the Mageia Booth.

And come in mass as this is one of the best FLOSS event WW. Really !