nmai / docker-alpine

Docker containers running Alpine linux and s6 for process management. Sold, reliable containers.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

docker-alpine

A bunch of Docker images running Alpine linux and s6 process management (via s6-overlay).

Read more about the design of the Docker images and how they help to make process management within Docker containers quick and simple.

Support for the DNS search keyword has also been added such that although all images within this repository use Alpine Linux, they also all support the DNS search keyword.

Images

The following describes the images that are available and the inheritance chain:

├─ alpine-base
|  ├─ alpine-apache
|  ├─ alpine-confd
|  |  └─ alpine-rabbitmq
|  ├─ alpine-consul
|  |  ├─ alpine-consul-ui
|  |  ├─ alpine-consul-base
|  |  |  ├─ alpine-consul-apache
|  |  |  ├─ alpine-consul-nodejs
|  |  |  ├─ alpine-consul-nginx
|  |  |  |  └─ alpine-consul-nginx-nodejs
|  |  |  └─ alpine-consul-redis
|  ├─ alpine-nginx
|  |  └─ alpine-nginx-nodejs
|  ├─ alpine-nodejs
|  └─ alpine-redis

alpine-base

This image is the base for all containers. It contains Alpine Linux (with DNS search support) and s6 via s6-overlay. It is super small and does nothing else.

An example of inheriting from this container and running it can be found here.

Latest version is 2.0.0, or latest (VERSIONS.md).

alpine-apache

This image inherits from alpine-base, and includes apache with a very basic configuration. You can read about using this image and customising it here.

An example of inheriting from this container and running Apache can be found here.

Latest version is 2.0.0, or latest (VERSIONS.md).

alpine-confd

This image inherits from alpine-base and adds confd into the mix. This image should be seen as a base image which should be used for heavy customisation. It's quite lean featuring only Alpine Linux, s6 and confd. Read here for more information.

An example of inheriting from this container and running Consul can be found here.

Latest version is 2.0.0, or latest (VERSIONS.md).

alpine-consul

This image inherits from alpine-base and adds Consul into the mix. By default, it's setup as a consul server (with a bootstrap-expect of 1), so it will need some customisation. Read here for more information.

An example of inheriting from this container and running Consul can be found here.

Latest version is 2.0.0, or latest (VERSIONS.md).

alpine-consul-base

This image inherits from alpine-consul and is designed specifically to be inherited from, to create other images which require a working Consul setup. Consul is setup to run in agent mode, it expects one linked container called consul-agent and will automatically join to that ip. It also contains consul-template to allow configuration files to be easily generated based on service discovery. Read here for more information.

An example of inheriting from this container and running Consul can be found here.

Latest version is 3.0.0, or latest (VERSIONS.md).

alpine-consul-apache

This image inherits from alpine-consul-base and is perfect if you're looking to run Apache within a Docker setup and wanting to benefit from Consul for service registration and discovery. Read here for more information.

An example of inheriting from this container and running apache can be found here.

Latest version is 1.0.0, or latest (VERSIONS.md).

alpine-consul-nodejs

This image inherits from alpine-consul-base and is perfect if you're looking to run a Node.js application within a Docker setup and wanting to benefit from Consul for service registration and discovery. Read here for more information.

An example of inheriting from this container and running a Node.js website can be found here.

Looking for a particular version of Node.js? See NODEJS.md for more information.

Latest version is 3.0.0, or latest (VERSIONS.md).

alpine-consul-nginx

This image inherits from alpine-consul-base and is perfect if you're looking to run Nginx within a Docker setup and wanting to benefit from Consul for service registration and discovery. Read here for more information.

An example of inheriting from this container and running nginx can be found here.

Latest version is 2.0.0, or latest (VERSIONS.md).

alpine-consul-nginx-nodejs

This image inherits from alpine-consul-nginx and is perfect if you're looking to run nginx to proxy to a Node.js application, or if you're wanting to run nginx as a load balancer (proxying to external containers) and using Node.js for nginx configuration. Read here for more information.

An example of inheriting from this container and running nginx with Node.js can be found here.

Latest version is 2.0.0, or latest (VERSIONS.md).

alpine-consul-redis

This image inherits from alpine-consul-base and provides a Redis container benefiting from Consul for service registration and discovery. Read here for more information.

An example of inheriting from this container can be found here.

Latest version is 1.0.0, or latest (VERSIONS.md).

alpine-consul-ui

The image inherits from alpine-consul, and is geared up to run the Consul Web UI. There are some configuration options which can be read here.

An example of inheriting from this container and running Consul can be found here.

Latest version is 1.0.0, or latest (VERSIONS.md).

alpine-nginx

This image inherits from alpine-base, and includes nginx with a very basic configuration. You can read about using this image and customising it here.

An example of inheriting from this container and running Nginx can be found here.

Latest version is 2.1.1, or latest (VERSIONS.md).

alpine-nginx-nodejs

This image inherits from alpine-nginx, and includes nginx and Node.js. This image is great if you want run nginx, but have Node.js do all of the configuration for Nginx. You can read about using this image and customising it here.

An example of inheriting from this container and running it can be found here.

Latest version is 2.1.1, or latest (VERSIONS.md).

alpine-nodejs

This image inherits from alpine-base, and includes Node.js. You can read about using this image and customising it here.

An example of inheriting from this container and running a Node.js script can be found here.

Latest version is 3.1.0, or latest (VERSIONS.md).

alpine-rabbitmq

This image inherits from alpine-confd, and includes RabbitMQ. You can read about using this image and customising it here.

Latest version is 2.1.1, or latest (VERSIONS.md).

alpine-redis

This image inherits from alpine-base, and includes Redis. You can read about using this image and customising it here. An example of inheriting from this container and running Redis can be found here.

Latest version is 1.0.0, or latest (VERSIONS.md).

Versioning

Each image has it's own version and will be updated independently. All versions follow semver. If a software package or the operating system the image uses is updated, the level of update will be reflected in the new version number, for example:

  • if Alpine Linux is upgraded from 3.2 to 3.3, then the image version will receive a minor increment
  • if Alpine Linux is upgraded from 3.3 to 4, then the image version will receive a major increment
  • if s6-overlay is upgraded to the latest patch upgrade, and nginx is upgraded to the latest minor upgrade, then the image version will will receive a minor increment

Setup

Setup the vagrant machine by running vagrant up --provider=vmware_fusion. This will get you a VM running a pretty basic version of Ubuntu with:

  • Docker (latest at the time of running vagrant up, for the first time).
  • Installed packages software-properties-common, build-essential.

Contributors

You can view more information about the contributors here.

About

Docker containers running Alpine linux and s6 for process management. Sold, reliable containers.

License:MIT License


Languages

Language:Shell 54.1%Language:HTML 34.5%Language:Nginx 11.4%