Skip to content

stafli-org/stafli.system.base

Repository files navigation

Stafli Base System

Stafli Base System builds are based on Debian and CentOS, and developed as scripts for Docker.
Continues on Stafli Minimal System builds.
This project is part of the Stafli Application Stack.

Requires Docker Compose 1.6.x or higher due to the version 2 format of the docker-compose.yml files.

There are docker-compose.yml files per distribution, as well as docker-compose.override.yml and .env files, which may be used to override configuration. An optional Makefile is provided to help with loading these with ease and perform commands in batch.

Scripts are also provided for each distribution to help test and deploy the installation procedures in non-Docker environments.

The images are automatically built at a repository in the Docker Hub registry.

Distributions

The services use custom images as a starting point for the following distributions:

Services

These are the services described by the dockerfile and docker-compose files:

Images

These are the resulting images upon building:

  • Stable:
    • stafli/stafli.system.base:base10_debian9
    • stafli/stafli.system.base:base10_centos7
    • stafli/stafli.system.base:base10_ubuntu16
    • stafli/stafli.system.base:base10_alpine37
  • Old Stable:
    • stafli/stafli.system.base:base10_debian8
    • stafli/stafli.system.base:base10_centos6
    • stafli/stafli.system.base:base10_ubuntu14
    • stafli/stafli.system.base:base10_alpine36
  • Old Old Stable:
    • stafli/stafli.system.base:base10_debian7
    • stafli/stafli.system.base:base10_centos5
    • stafli/stafli.system.base:base10_ubuntu12
    • stafli/stafli.system.base:base10_alpine35
    • stafli/stafli.system.base:base10_alpine34

Containers

These containers can be created from the images:

  • Stable:
    • stafli_system_base10_debian9_xxx
    • stafli_system_base10_centos7_xxx
    • stafli_system_base10_ubuntu16_xxx
    • stafli_system_base10_alpine37_xxx
  • Old Stable:
    • stafli_system_base10_debian8_xxx
    • stafli_system_base10_centos6_xxx
    • stafli_system_base10_ubuntu14_xxx
    • stafli_system_base10_alpine36_xxx
  • Old Old Stable:
    • stafli_system_base10_debian7_xxx
    • stafli_system_base10_centos5_xxx
    • stafli_system_base10_ubuntu12_xxx
    • stafli_system_base10_alpine35_xxx
    • stafli_system_base10_alpine34_xxx

Usage

From Docker Hub repository (manual)

Note: this method will not allow you to use the docker-compose files nor the script.

  1. To pull the images, try typing:
    docker pull <image_url>
  2. You can start a new container interactively by typing:
    docker run -ti <image_url> /bin/bash

Where <image_url> is the full image url (lookup the image list above).

Example:

docker pull stafli/stafli.system.base:base10_debian8

docker run -ti stafli/stafli.system.base:base10_debian8 /bin/bash

From GitHub repository (automated)

Note: this method allows using docker-compose and the Makefile.

  1. Download the repository zip file and unpack it or clone the repository using:
    git clone https://github.com/stafli-org/stafli.system.base.git
  2. Navigate to the project directory through the terminal:
    cd stafli.system.base
  3. Type in the desired operation through the terminal:
    make <operation> DISTRO=<distro>

Where is the distribution/directory and is the desired docker-compose operation.

Example:

git clone https://github.com/stafli-org/stafli.system.base.git;
cd stafli.system.base;

# Example #1: quick start, with build
make up DISTRO=debian8;

# Example #2: quick start, with pull
make img-pull DISTRO=debian8;
make up DISTRO=debian8;

# Example #3: manual steps, with build
make img-build DISTRO=debian8;
make con-create DISTRO=debian8;
make con-start DISTRO=debian8;
make con-ls DISTRO=debian8;

Type make in the terminal to discover all the possible commands.

Credits

Stafli Base System
Copyright (C) 2016-2017 Stafli
Luís Pedro Algarvio
This project is part of the Stafli Application Stack.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.