├── README.md ├── Makefile ├── tools └── Dockerfile ├── php └── Dockerfile └── database ├── create-test-database.sh ├── Dockerfile └── install-extensions.sh /README.md: -------------------------------------------------------------------------------- 1 | # docker-bitc 2 | Dockerfiles for the BITC project 3 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | SHELL := /bin/bash 2 | 3 | 4 | createtools: 5 | docker build -t outlandish/bitc-tools tools/ 6 | 7 | uploadtools: 8 | docker push outlandish/bitc-tools 9 | -------------------------------------------------------------------------------- /tools/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM outlandish/bitc-php 2 | 3 | RUN apk update && apk add bash 4 | 5 | COPY --from=composer:2 /usr/bin/composer /usr/bin/composer 6 | 7 | ENV PATH="/var/www/html/vendor/bin:${PATH}" 8 | -------------------------------------------------------------------------------- /php/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM php:7.2-fpm-alpine 2 | 3 | RUN set -ex \ 4 | && apk --no-cache add \ 5 | postgresql postgresql-dev \ 6 | zlib zlib-dev \ 7 | && docker-php-ext-install pdo pdo_pgsql zip \ 8 | && apk del \ 9 | postgresql-dev \ 10 | zlib-dev -------------------------------------------------------------------------------- /database/create-test-database.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL 5 | CREATE DATABASE ${POSTGRES_DB}_test; 6 | GRANT ALL PRIVILEGES ON DATABASE ${POSTGRES_DB}_test TO ${POSTGRES_USER}; 7 | EOSQL 8 | -------------------------------------------------------------------------------- /database/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM postgres:9.6-alpine 2 | 3 | COPY ./create-test-database.sh /docker-entrypoint-initdb.d/create-test-database.sh 4 | COPY ./install-extensions.sh /docker-entrypoint-initdb.d/install-extensions.sh 5 | 6 | RUN chmod +x /docker-entrypoint-initdb.d/install-extensions.sh 7 | RUN chmod +x /docker-entrypoint-initdb.d/create-test-database.sh 8 | -------------------------------------------------------------------------------- /database/install-extensions.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL 5 | CREATE EXTENSION if not exists pg_trgm; 6 | EOSQL 7 | 8 | psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "${POSTGRES_DB}_test" <<-EOSQL 9 | CREATE EXTENSION if not exists pg_trgm; 10 | EOSQL 11 | 12 | psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL 13 | CREATE EXTENSION if not exists citext; 14 | EOSQL 15 | 16 | psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "${POSTGRES_DB}_test" <<-EOSQL 17 | CREATE EXTENSION if not exists citext; 18 | EOSQL 19 | --------------------------------------------------------------------------------