Various based docker images
e185c732dc
all : fix terminal ENV context and add doc nav |
||
---|---|---|
pluie | ||
DOCKER.md | ||
LICENSE | ||
README.md |
docker-images
various based images for Docker
Available Images
- pluie/alpine ( < 10 MB ) Alpine/3.4
- pluie/alpine-apache ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24
- pluie/alpine-mysql ( ~172 MB ) Mysql/5.5.47 ( MariaDB )
- docker tips
Base Image Structure
project/
|
|-- install.d/ # deployed in /scripts on target container
| | # launch on docker image building process
| | # XX-name.sh - low XX are run first
| |-- 00-util.sh
| |-- 40-fix.sh
|
|-- pre-init.d/ # deployed in /scripts on target container
| | # launch on docker container running process
| |-- 50-example.sh
|
|-- build # build docker image : ./build [TAG]
|-- common.sh # don't modify - sourced by main.sh to execute pre-init.d scripts first
|-- install.sh # don't modify - execute install.d scripts on docker building process
|-- main.sh # source common.sh then execute entry point instruction
|-- util.sh # sourced by common.sh
Extended Image Structure
project/
|
|-- install.d/
|-- pre-init.d/
|
|-- build # same as based image
|-- main.sh # source based common.sh then execute entry point instruction
Extended Image Dockerfile
in any case, keep that :
FROM $baseImage
MAINTAINER $author $url
ADD files.tar /scripts
RUN bash /scripts/install.sh
then define only EXPOSE VOLUME & ENV instructions
Building Process
build script archive project files in files.tar then execute the Docker build command.
./build [optionalTag]
no need to worry about pwd, docker repository and image name depends on directory structure. you can keep same build script in any project