Update docker build script and tools
This commit is contained in:
parent
c4f11d1e69
commit
a239631e9b
3
.env
3
.env
@ -1 +1,2 @@
|
|||||||
HOMEPAGE_IMAGE=homepage-php
|
PHP_IMAGE=homepage-php
|
||||||
|
NODE_IMAGE=node:9.11
|
12
.gitignore
vendored
12
.gitignore
vendored
@ -1,7 +1,5 @@
|
|||||||
.composer
|
.idea/
|
||||||
.npm
|
output_*
|
||||||
.vagrant
|
node_modules/
|
||||||
/ansible/galaxy.roles/
|
var/
|
||||||
/output_*
|
vendor/
|
||||||
/node_modules/
|
|
||||||
/vendor/
|
|
||||||
|
6
Makefile
6
Makefile
@ -1,12 +1,12 @@
|
|||||||
|
build-docker:
|
||||||
|
./tools/build
|
||||||
|
|
||||||
build-assets:
|
build-assets:
|
||||||
./tools/npm run build
|
./tools/npm run build
|
||||||
|
|
||||||
build-site:
|
build-site:
|
||||||
./tools/sculpin generate --clean --env=dev --no-interaction
|
./tools/sculpin generate --clean --env=dev --no-interaction
|
||||||
|
|
||||||
build-docker:
|
|
||||||
docker build --tag homepage-php .
|
|
||||||
|
|
||||||
build: build-site build-assets
|
build: build-site build-assets
|
||||||
|
|
||||||
watch: build-assets
|
watch: build-assets
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
FROM php:7.2-cli
|
FROM php:7.2-cli
|
||||||
|
|
||||||
# Project folder
|
# Project folder
|
||||||
RUN mkdir -p /var/homepage
|
RUN mkdir -p /srv/app
|
||||||
|
|
||||||
WORKDIR /srv/homepage
|
WORKDIR /srv/app
|
||||||
|
|
||||||
RUN apt-get update \
|
RUN apt-get update \
|
||||||
&& apt-get install -y git gnupg \
|
&& apt-get install -y git zip curl gnupg \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# get composer and required tools
|
# get composer and required tools
|
||||||
RUN curl -sLO https://getcomposer.org/download/1.5.2/composer.phar \
|
RUN curl -sLO https://getcomposer.org/download/1.6.3/composer.phar \
|
||||||
&& mv composer.phar /usr/local/bin/composer \
|
&& mv composer.phar /usr/local/bin/composer \
|
||||||
&& chmod +x /usr/local/bin/composer
|
&& chmod +x /usr/local/bin/composer
|
||||||
|
|
||||||
@ -18,8 +18,3 @@ RUN curl -sLO https://getcomposer.org/download/1.5.2/composer.phar \
|
|||||||
RUN curl -sLO https://deployer.org/releases/v6.0.3/deployer.phar \
|
RUN curl -sLO https://deployer.org/releases/v6.0.3/deployer.phar \
|
||||||
&& mv deployer.phar /usr/local/bin/dep \
|
&& mv deployer.phar /usr/local/bin/dep \
|
||||||
&& chmod +x /usr/local/bin/dep
|
&& chmod +x /usr/local/bin/dep
|
||||||
|
|
||||||
# install npm
|
|
||||||
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - \
|
|
||||||
&& apt-get install -y nodejs \
|
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
|
8
tools/build
Executable file
8
tools/build
Executable file
@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
source .env
|
||||||
|
|
||||||
|
docker build \
|
||||||
|
--file docker/Dockerfile \
|
||||||
|
--tag ${PHP_IMAGE} \
|
||||||
|
$PWD
|
@ -2,16 +2,17 @@
|
|||||||
|
|
||||||
source .env
|
source .env
|
||||||
|
|
||||||
mkdir -p ./.composer/cache
|
mkdir -p var/docker-cache/.composer
|
||||||
|
|
||||||
docker run \
|
docker run \
|
||||||
--rm \
|
--rm \
|
||||||
--interactive \
|
--interactive \
|
||||||
--tty \
|
--tty \
|
||||||
--user $UID:$(id -g) \
|
--user "$UID:$(id -g)" \
|
||||||
--volume /etc/passwd:/etc/passwd:ro \
|
--volume /etc/passwd:/etc/passwd:ro \
|
||||||
--volume /etc/group:/etc/group:ro \
|
--volume /etc/group:/etc/group:ro \
|
||||||
--volume $PWD:/srv/homepage \
|
--volume $PWD:/srv/app \
|
||||||
--volume $PWD/.composer:/tmp/.composer \
|
--volume $HOME:$HOME \
|
||||||
|
--volume $PWD/var/docker-cache/.composer:/tmp/.composer \
|
||||||
--env COMPOSER_HOME=/tmp/.composer \
|
--env COMPOSER_HOME=/tmp/.composer \
|
||||||
${HOMEPAGE_IMAGE} composer "$@"
|
${PHP_IMAGE} composer "$@"
|
||||||
|
14
tools/npm
14
tools/npm
@ -2,14 +2,18 @@
|
|||||||
|
|
||||||
source .env
|
source .env
|
||||||
|
|
||||||
mkdir -p ./.npm
|
mkdir -p var/docker-cache/.npm
|
||||||
|
|
||||||
docker run \
|
docker run \
|
||||||
--rm \
|
--rm \
|
||||||
--interactive \
|
--interactive \
|
||||||
--tty \
|
--tty \
|
||||||
--user $UID:$(id -g) \
|
--user "$UID:$(id -g)" \
|
||||||
--volume $PWD:/srv/homepage \
|
--volume /etc/passwd:/etc/passwd:ro \
|
||||||
--volume $PWD/.npm:/tpm/.npm \
|
--volume /etc/group:/etc/group:ro \
|
||||||
|
--volume $PWD:/srv/app \
|
||||||
|
--volume $HOME:$HOME \
|
||||||
|
--volume $PWD/var/docker-cache/.npm:/tmp/.npm \
|
||||||
--env npm_config_cache=/tmp/.npm \
|
--env npm_config_cache=/tmp/.npm \
|
||||||
${HOMEPAGE_IMAGE} npm "$@"
|
--workdir /srv/app \
|
||||||
|
${NODE_IMAGE} npm "$@"
|
||||||
|
@ -6,10 +6,9 @@ docker run \
|
|||||||
--rm \
|
--rm \
|
||||||
--interactive \
|
--interactive \
|
||||||
--tty \
|
--tty \
|
||||||
--user "$UID" \
|
|
||||||
--init \
|
--init \
|
||||||
--volume="$PWD:/srv/homepage" \
|
--user "$UID:$(id -g)" \
|
||||||
|
--volume="$PWD:/srv/app" \
|
||||||
--expose=8000 \
|
--expose=8000 \
|
||||||
--publish=8000:8000 \
|
--publish=8000:8000 \
|
||||||
${HOMEPAGE_IMAGE} \
|
${PHP_IMAGE} ./vendor/bin/sculpin "$@"
|
||||||
./vendor/bin/sculpin "$@"
|
|
||||||
|
Loading…
Reference in New Issue
Block a user