Skip to content

Recursive Fibonacci with Docker inside Docker inside Docker inside...

Notifications You must be signed in to change notification settings

GoogleDeveloperExperts/docker-fiboid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

What's that?

Recursive Fibonacci with Docker inside Docker inside Docker inside...

Why so much hate?

I wanted to learn more about Docker before I deploy apps with Docker. And its fun!

Build

docker build -t dgageot/fiboid .

Run

docker run --rm --privileged -ti -v /var/lib/docker:/var/lib/docker dgageot/fiboid 0
docker run --rm --privileged -ti -v /var/lib/docker:/var/lib/docker dgageot/fiboid 1
docker run --rm --privileged -ti -v /var/lib/docker:/var/lib/docker dgageot/fiboid 2
docker run --rm --privileged -ti -v /var/lib/docker:/var/lib/docker dgageot/fiboid 4

How it works

Here's the algorithm:

if value is 0 then return 0
if value is 1 then return 1
otherwise
start a docker daemon inside current docker container
run a container for value-2
run a container for value-1
return the sum of the two values

Most of the time is spent starting docker -d and sleeping until it's started.

Sample Execution Plan

docker run --rm --privileged -ti -v /var/lib/docker:/var/lib/docker dgageot/fiboid 7
- docker 7 (=13)
  - docker 5
    - docker 3
      - docker 1
      - docker 2
        - docker 0
        - docker 1
    - docker 4
      - docker 2
        - docker 0
        - docker 1
      - docker 3
        - docker 1
        - docker 2
          - docker 0
          - docker 1 (depth=6)
  - docker 6
    - docker 4
      - docker 2
        - docker 0
        - docker 1
      - docker 3
        - docker 1
        - docker 2
          - docker 0
          - docker 1
    - docker 5
      - docker 3
        - docker 1
        - docker 2
          - docker 0
          - docker 1
      - docker 4
        - docker 2
          - docker 0
          - docker 1
        - docker 3
          - docker 1
          - docker 2
            - docker 0
            - docker 1

About

Recursive Fibonacci with Docker inside Docker inside Docker inside...

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published