2016-07-25 00:28:26 +00:00
|
|
|
# pluie/alpine
|
|
|
|
|
2016-08-01 02:22:06 +00:00
|
|
|
- [index][1]
|
2016-08-09 02:06:36 +00:00
|
|
|
- [pluie/alpine][2] ( < 10 MB ) Alpine/3.4
|
|
|
|
- [pluie/alpine-apache][3] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24
|
2016-08-12 02:06:57 +00:00
|
|
|
- [pluie/alpine-apache-fpm][7] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 Fpm
|
2017-01-30 01:58:46 +00:00
|
|
|
- [pluie/alpine-symfony][6] ( ~ 82 MB ) Symfony2.8 or 3.2
|
2017-01-29 22:44:52 +00:00
|
|
|
- [pluie/alpine-apache-php7][8] ( ~ 50 MB ) Apache/2.4.25 Php/7.0.15
|
2017-01-30 01:58:46 +00:00
|
|
|
- [pluie/alpine-symfony-php7][9] ( ~ 82 MB ) Symfony2.8 or 3.2 Php/7.0.15
|
|
|
|
- [pluie/alpine-mysql][4] ( ~172 MB ) Mysql/5.5.47 ( MariaDB )
|
2016-08-01 02:22:06 +00:00
|
|
|
- [docker tips][5]
|
|
|
|
|
2016-07-25 00:26:39 +00:00
|
|
|
This Image provide a Linux Alpine distribution with :
|
|
|
|
- fully functionnal & colorized terminal
|
|
|
|
- bash
|
|
|
|
- curl
|
|
|
|
- nano as editor
|
|
|
|
|
2016-07-29 11:51:56 +00:00
|
|
|
Base image : [alpine:3.4] (https://hub.docker.com/_/alpine/)
|
2016-07-25 00:26:39 +00:00
|
|
|
|
2016-07-25 00:28:26 +00:00
|
|
|
This project come with a structure to facilitate further images (like pluie/alpine-apache & pluie/alpine-mysql)
|
|
|
|
|
2016-08-09 01:08:26 +00:00
|
|
|
__note :__ wget ssl issue
|
|
|
|
|
|
|
|
apk add ca-certificates wget && update-ca-certificates
|
|
|
|
|
|
|
|
|
2016-07-28 15:43:35 +00:00
|
|
|
## Image Size
|
2016-07-25 00:28:26 +00:00
|
|
|
|
|
|
|
- very small image < 10 MB
|
|
|
|
|
|
|
|
|
2016-07-28 15:47:04 +00:00
|
|
|
## Image Usage
|
2016-07-25 00:28:26 +00:00
|
|
|
|
|
|
|
```
|
2016-07-29 09:22:14 +00:00
|
|
|
$ docker run --name alpine -it pluie/alpine
|
2016-07-25 00:28:26 +00:00
|
|
|
```
|
|
|
|
|
2016-07-28 15:43:35 +00:00
|
|
|
## Image Structure
|
2016-07-25 00:28:26 +00:00
|
|
|
|
|
|
|
```
|
|
|
|
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
|
2016-08-09 01:08:26 +00:00
|
|
|
| |-- 50-builder.sh
|
2016-07-25 00:28:26 +00:00
|
|
|
|
|
|
|
|
|-- 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
|
|
|
|
```
|
|
|
|
|
2016-07-25 00:26:39 +00:00
|
|
|
you can easily create your own images based on this structure.
|
|
|
|
keep an eye to pluie/alpine-apache & pluie/alpine-mysql wich extend pluie/alpine
|
2016-07-25 00:28:26 +00:00
|
|
|
|
|
|
|
|
|
|
|
## Extend pluie/alpine Image
|
|
|
|
|
2016-07-25 00:26:39 +00:00
|
|
|
RUN instructions are minimized
|
2016-07-25 00:28:26 +00:00
|
|
|
on extended image you can only use :
|
|
|
|
```
|
|
|
|
RUN bash /scripts/install.sh
|
|
|
|
```
|
2016-07-25 00:26:39 +00:00
|
|
|
add your packages in a script in install.d directory
|
|
|
|
keep name below 40 because install.d/40-fix.sh clean package repository
|
2016-07-25 00:28:26 +00:00
|
|
|
each extended image inherit install.d && pre-init.d scripts
|
|
|
|
|
2016-07-25 00:26:39 +00:00
|
|
|
extended images doesn't need to define ENTRYPOINT
|
|
|
|
you can keep intact build script in each extended project
|
|
|
|
manage your install & init instruction in install.d & pre-init.d directory
|
|
|
|
and write your own main.sh script
|
|
|
|
|
|
|
|
Docker file example (from pluie/alpine-apache)
|
|
|
|
|
|
|
|
```
|
|
|
|
FROM pluie/alpine
|
|
|
|
|
|
|
|
MAINTAINER a-Sansara https://github.com/a-sansara
|
|
|
|
|
|
|
|
ADD files.tar /scripts
|
|
|
|
|
2016-08-12 18:14:18 +00:00
|
|
|
ENV SHENV_NAME=Apache \
|
|
|
|
SHENV_COLOR=67 \
|
|
|
|
HTTP_SERVER_NAME=site.docker \
|
|
|
|
WWW_DIR=www \
|
|
|
|
WWW_INDEX=index.php \
|
|
|
|
FIX_OWNERSHIP=1 \
|
|
|
|
TZ=Europe/Paris
|
2016-07-25 00:26:39 +00:00
|
|
|
|
|
|
|
EXPOSE 80
|
|
|
|
|
2016-08-12 18:14:18 +00:00
|
|
|
RUN bash /scripts/install.sh
|
2016-07-25 00:26:39 +00:00
|
|
|
```
|
2016-07-25 00:28:26 +00:00
|
|
|
|
2016-08-01 02:22:06 +00:00
|
|
|
[1]: https://github.com/pluie-org/docker-images
|
|
|
|
[2]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine
|
2016-08-13 19:43:47 +00:00
|
|
|
[3]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache
|
|
|
|
[4]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-mysql
|
2016-08-12 02:06:57 +00:00
|
|
|
[7]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache-fpm
|
2016-08-01 02:22:06 +00:00
|
|
|
[5]: https://github.com/pluie-org/docker-images/blob/master/DOCKER.md
|
2016-08-09 01:08:26 +00:00
|
|
|
[6]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-symfony
|
2017-01-30 01:58:46 +00:00
|
|
|
[8]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache-php7
|
|
|
|
[9]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-symfony-php7
|