Skip to content
This repository has been archived by the owner on Feb 24, 2020. It is now read-only.

Commit

Permalink
docs: use diagram images for image lifecycle
Browse files Browse the repository at this point in the history
  • Loading branch information
s-urbaniak committed Aug 16, 2016
1 parent 3708c82 commit 8b859cd
Show file tree
Hide file tree
Showing 5 changed files with 39 additions and 22 deletions.
24 changes: 2 additions & 22 deletions Documentation/devel/architecture.md
Expand Up @@ -170,14 +170,7 @@ rkt commands like prepare and run, as a first step, need to retrieve all the ima

This is done with the following chain:

```
----------- ----------- ------------
| | | | | |
| Fetch |--------->| Store |--------->| Render |
| | | | | |
----------- ----------- ------------
```
![image-chain](image-chain.png)

* Fetch: in the fetch phase rkt retrieves the requested images. The fetching implementation depends on the provided image argument such as an image string/hash/https URL/file (e.g. `example.com/app:v1.0`).
* Store: in the store phase the fetched images are saved to the local store. The local store is a cache for fetched images and related data.
Expand All @@ -186,20 +179,7 @@ This is done with the following chain:

These three logical blocks are implemented inside rkt in this way:

```
------------ --------------- ------------- ------------------------
| | | | | | overlayfs | |
| Fetchers |--------->| Image Store |<-------------| TreeStore |<-----------------| Stage1-2 fs contents |
| | | |<---- | | -------| |
------------ --------------- \ ------------- / ------------------------
\ /
\ ----------------- /
\ | | /
-----| Direct stage1-2 |---
| renderer |
| |
-----------------
```
![image-logical-blocks](image-logical-blocks.png)

Currently rkt implements the [appc][appc-spec] internally, converting to it from other container image formats for compatibility. In the future, additional formats like the [OCI image spec][oci-img-spec] may be added to rkt, keeping the same basic scheme for fetching, storing, and rendering application container images.

Expand Down
16 changes: 16 additions & 0 deletions Documentation/devel/image-chain.dot
@@ -0,0 +1,16 @@
digraph G {
rankdir="LR";

graph [fontname = "helvetica"];
node [fontname = "Arial", fillcolor="#FFE599", style="filled"];
edge [fontname = "monospace"];

{
fetch [shape="node", label=<Fetch>]
store [shape="node", label=<Store>]
render [shape="node", label=<Render>]
}

fetch -> store
store -> render
}
Binary file added Documentation/devel/image-chain.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
21 changes: 21 additions & 0 deletions Documentation/devel/image-logical-blocks.dot
@@ -0,0 +1,21 @@
digraph G {
rankdir="LR";

graph [fontname = "helvetica"];
node [fontname = "Arial", fillcolor="#FFE599", style="filled"];
edge [fontname = "monospace"];

{
fetchers [shape="node", label=<Fetchers>, pos="0,0!"]
image_store [shape="node", label=<Image Store>, pos="2,0!"]
tree_store [shape="node", label=<Tree Store>, pos="4,0!"]
fs_contents [shape="node", label=<Stage1-2 fs contents>, pos="6,0!"]
renderer [shape="node", label=<Direct Stage1-2 renderer>, pos="4,-1!"]
}

fetchers -> image_store
tree_store -> image_store
renderer -> image_store
fs_contents -> tree_store
renderer -> fs_contents [dir=none]
}
Binary file added Documentation/devel/image-logical-blocks.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 8b859cd

Please sign in to comment.