Skip to content

Commit

Permalink
docs: README updates
Browse files Browse the repository at this point in the history
  • Loading branch information
lnielsen committed Feb 21, 2019
1 parent 463a32d commit 8007004
Show file tree
Hide file tree
Showing 5 changed files with 41 additions and 24 deletions.
6 changes: 6 additions & 0 deletions AUTHORS.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,9 @@
Contributors
============

- Chiara Bigarella
- Chris Topaloudis
- Diego Rodriguez
- Dinos Kousidis
- Lars Holm Nielsen
- Rokas Maciulaitis
Binary file removed Dockerfile-build-process-custom.png
Binary file not shown.
Binary file removed Dockerfile-build-process.png
Binary file not shown.
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (C) 2018 CERN.
Copyright (C) 2018-2019 CERN.

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
Expand Down
57 changes: 34 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,50 @@
# docker-invenio
# CentOS 7 with Python 3 for 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/)
[![Build Status](https://travis-ci.org/inveniosoftware/docker-invenio.svg?branch=master)](https://travis-ci.org/inveniosoftware/docker-invenio) [![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/)

This repository contains Docker base images to generate the environment for
[Invenio](https://github.com/inveniosoftware/invenio) applications.
This image serves as base image for [Invenio](https://github.com/inveniosoftware/invenio) instances running on CentOS7. The purpose is to provide a base image that is usable in production environments like OpenShift.

**Prerequisites** Docker: [https://docs.docker.com/install/](https://docs.docker.com/install/)
The image is based on the official CentOS image ``centos:7`` and contains:

- Python 3.6 set as default Python interpreter with upgraded versions of pip, pipenv, setuptools and wheel.
- Tools: Node.js, NPM, Git, Curl Vim, Emacs, Development Tools.
- Library devel packages: libffi, libxml2, libxslt.
- Working directory for an Invenio instance.

## Supported tags and respective ``Dockerfile`` links

* 3.6 - [Dockerfile](https://github.com/inveniosoftware/docker-invenio/blob/master/python3.6/Dockerfile).

## Usage

Detailed usage is described in the [invenio getting started guide](https://invenio-software.org/gettingstarted/).
This image is used by the scaffolded Dockerfile in the Invenio [getting started guide](https://inveniosoftware.org/gettingstarted/). See the guide for quickly getting started.

## Build the new images
### Create a ``Dockerfile``

Build the images by running the docker build with the appropiate tag, i.e:
A simple ``Dockerfile`` using this base image could look like this:

`docker build -f python3.6/Dockerfile -t my-site-base .`
```
FROM inveniosoftware/centos7-python:3.6
COPY ./ .
COPY ./docker/uwsgi/ ${INVENIO_INSTANCE_PATH}
RUN ./scripts/bootstrap
```

## Supported Tags and respective Dockerfile links
### Environment variables

* 3.6 - [Dockerfile](https://github.com/inveniosoftware/docker-invenio/blob/master/python3.6/Dockerfile).
The following environment variables has been set:

## Helpful resources
- ``WORKING_DIR=/opt/invenio``
- ``INVENIO_INSTANCE_PATH=/opt/invenio/var/instance``
- ``INVENIO_USER_ID=1000``

* [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)
* [Issue tracker](https://github.com/inveniosoftware/docker-invenio/issues)
### Rolling builds

The image is rebuild when the base image ``centos7:latest`` is updated. The base image is receiving regular monthly updates as well as emergency fixes.

## Automated builds

Automated builds are configured using [Docker Hub builds](https://docs.docker.com/docker-hub/builds/). The tiggers are defined the following way:
Automated builds are configured using [Docker Hub builds](https://docs.docker.com/docker-hub/builds/). The triggers are defined the following way:

```(bash)
Branch/tag Dockerfile Docker tag
Expand All @@ -39,14 +53,11 @@ Push to master ---> /python3.6/Dockerfile ---> 3.6
Push /^3\.6.*/ tag ---> /python3.6/Dockerfile ---> git-tag-name, 3.6
```

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.

Maintained by: [InvenioSoftware](https://github.com/inveniosoftware/)
This 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.

## License

This file is part of Invenio.
Copyright (C) 2015-2018 CERN.
Copyright (C) 2018-2019 CERN.

Invenio is free software; you can redistribute it and/or modify it
Docker-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.

0 comments on commit 8007004

Please sign in to comment.