From 72b27b0839a28492dca233409eb995c82cb2a203 Mon Sep 17 00:00:00 2001 From: Rokas Maciulaitis Date: Wed, 5 Dec 2018 16:58:25 +0100 Subject: [PATCH] Docs: README.rst to README.md * Converting README.rst to README.md for better rendering in hub.docker.com. Closes #8 Signed-off-by: Rokas Maciulaitis --- README.md | 107 +++++++++++++++++------------------------------------ README.rst | 39 ------------------- 2 files changed, 34 insertions(+), 112 deletions(-) delete mode 100644 README.rst diff --git a/README.md b/README.md index 0afba31..e6f084d 100644 --- a/README.md +++ b/README.md @@ -1,95 +1,56 @@ -.. - This file is part of Invenio. - Copyright (C) 2015-2018 CERN. +Docker Invenio +============== - Invenio is free software; you can redistribute it and/or modify it - under the terms of the MIT License; see LICENSE file for more details. +[![image](https://img.shields.io/docker/automated/inveniosoftware/centos7-python.svg)](https://hub.docker.com/r/inveniosoftware/centos7-python/) +[![image](https://img.shields.io/docker/build/inveniosoftware/centos7-python.svg)](https://hub.docker.com/r/inveniosoftware/centos7-python/builds/) -# docker-invenio +Docker base images for [Invenio](https://github.com/inveniosoftware/invenio). -[![Build Status](https://travis-ci.org/inveniosoftware/docker-invenio.svg?branch=master"BuildStatus\")](https://travis-ci.org/inveniosoftware/docker-invenio/branches?branch=master) [![image](https://img.shields.io/docker/automated/inveniosoftware/centos7-python.svg)](https://hub.docker.com/r/inveniosoftware/centos7-python/) [![image](https://img.shields.io/docker/build/inveniosoftware/centos7-python.svg)](https://hub.docker.com/r/inveniosoftware/centos7-python/builds/) +Supported tags and respective Dockerfile links +-------------- -This repository contains Docker base images to generate the environment for -[Invenio](https://github.com/inveniosoftware/invenio) applications. +* 3.6 [docker/Dockerfile](https://github.com/inveniosoftware/docker-invenio/blob/master/python3.6/Dockerfile). +* 3.7 [docker/Dockerfile](https://github.com/inveniosoftware/docker-invenio/blob/master/python3.7/Dockerfile). -**Prerequisites** Docker: [https://docs.docker.com/install/](https://docs.docker.com/install/) +Quick reference +-------------- +* Where to get help: +[the Docker Community Forums](https://forums.docker.com/), [the Docker Community Slack](https://blog.docker.com/2016/11/introducing-docker-community-directory-docker-community-slack/), or [Stack Overflow](https://stackoverflow.com/search?tab=newest&q=docker). -## Usage +* Where to file issues: +https://github.com/inveniosoftware/docker-invenio/issues. -Start by creating an Invenio instance with [cookiecutter-invenio-instance](https://github.com/inveniosoftware/cookiecutter-invenio-instance). +* Maintained by: +[Invenio](https://github.com/inveniosoftware/). -Among the generated files, there are two Dockerfiles [Dockerfile.base](https://github.com/inveniosoftware/cookiecutter-invenio-instance/blob/master/%7B%7Bcookiecutter.project_shortname%7D%7D/Dockerfile.base) and [Dockerfile](https://github.com/inveniosoftware/cookiecutter-invenio-instance/blob/master/%7B%7Bcookiecutter.project_shortname%7D%7D/Dockerfile), -which are used in that sequence to build the image for your application. +Automic builds +-------------- -The complete process is depicted in the following diagram: - ---- - -![](Dockerfile-build-process.png) - ---- - -The last image is a ready-to-run Invenio instance. If you wish to install -extra dependencies that are not included in the Dockerfiles, you can create -a Dockerfile based on Dockerfile.base to handle the modifications. - ---- - -![](Dockerfile-build-process-custom.png) - ---- - - -## Development Process - -Leveraging Docker image layer caching can offer a significant -speedup in your development process. This is the reason of -maintaining two Dockerfiles, a Dockerfile.base to create an image with the installed dependencies, and the final Dockerfile which installs the application code and -rebuilds the static assets, which tend to change more frequently. - -In order to incorporate your latest changes, you can just repeat the last step -of the build process. For example, if you have generated an invenio project called -FunGenerator with cookiecutter-invenio-instance: - -`docker build -f fun-generator/Dockerfile -t my-site .` - -## Supported Tags and respective Dockerfile links - -* 3.6 - [Dockerfile](https://github.com/inveniosoftware/docker-invenio/blob/master/python3.6/Dockerfile) - - -## Helpful resources - -* [Docker Community Forums](https://forums.docker.com/) -* [Docker Community Slack](https://blog.docker.com/2016/11/introducing-docker-community-directory-docker-community-slack/) -* [Stack Overflow](https://stackoverflow.com/search?tab=newest&q=docker) -* [God himself](https://twitter.com/thetweetofgod) -* [Issue tracker](https://github.com/inveniosoftware/docker-invenio/issues) - - -## Automated builds - -Automated builds are configured using [Docker Hub builds](https://docs.docker.com/docker-hub/builds/). The triggers are +Automatic builds are configured using [Docker Hub +builds](https://docs.docker.com/docker-hub/builds/). The tiggers are defined the following way: -``` -Branch/tag Dockerfile Docker tag +``` {.sourceCode .} +Branch/tag Dockerfile Docker tag -Push to master ---> /python3.6/Dockerfile ---> 3.6 -Push /^3\.6.*/ tag ---> /python3.6/Dockerfile ---> git-tag-name, 3.6 +Push to master ---> /python3.6/Dockerfile ---> 3.6 +Push to master ---> /python3.7/Dockerfile ---> 3.7 +Push /^3\.6.*/ tag ---> /python3.6/Dockerfile ---> git-tag-name, 3.6 +Push /^3\.7.*/ tag ---> /python3.7/Dockerfile ---> git-tag-name, 3.7 ``` -That way, we will use tag `3.6` as latest for Python version and there is also the possibility to push tags for specific use cases such as pinning certain libraries or patches. +That way, we will use tags `3.6` and `3.7` as latest for these Python +versions and there is also the possibility to push tags for specific use +cases such as pinning certain libraries or patches. To modify the +aforementioned configuration you can access [Inveniosoftware +DockerHub](https://hub.docker.com/r/inveniosoftware/centos7-python/~/settings/automated-builds/). -Maintained by: [InvenioSoftware](https://github.com/inveniosoftware/) - - -## License +License +------- This file is part of Invenio. Copyright (C) 2015-2018 CERN. Invenio is free software; you can redistribute it and/or modify it under the terms of the MIT License; see LICENSE file for more details. - diff --git a/README.rst b/README.rst deleted file mode 100644 index 8f53ef7..0000000 --- a/README.rst +++ /dev/null @@ -1,39 +0,0 @@ -.. - This file is part of Invenio. - Copyright (C) 2015-2018 CERN. - - Invenio is free software; you can redistribute it and/or modify it - under the terms of the MIT License; see LICENSE file for more details. - -=============== - Docker Invenio -=============== - -.. image:: https://img.shields.io/docker/automated/inveniosoftware/centos7-python.svg - :target: https://hub.docker.com/r/inveniosoftware/centos7-python/ -.. image:: https://img.shields.io/docker/build/inveniosoftware/centos7-python.svg - :target: https://hub.docker.com/r/inveniosoftware/centos7-python/builds/ - -Docker base images for Invenio. - -Automic builds -~~~~~~~~~~~~~~ - -Automatic builds are configured using -`Docker Hub builds `_. The tiggers -are defined the following way: - -.. code-block:: - - Branch/tag Dockerfile Docker tag - - Push to master ---> /python3.6/Dockerfile ---> 3.6 - Push to master ---> /python3.7/Dockerfile ---> 3.7 - Push /^3\.6.*/ tag ---> /python3.6/Dockerfile ---> git-tag-name, 3.6 - Push /^3\.7.*/ tag ---> /python3.7/Dockerfile ---> git-tag-name, 3.7 - -That way, we will use tags ``3.6`` and ``3.7`` as latest for these Python -versions and there is also the possibility to push tags for specific use -cases such as pinning certain libraries or patches. To modify the -aforementioned configuration you can access -`Inveniosoftware DockerHub `_.