Refactor the production Docker image
This commit is contained in:
parent
54507c2d74
commit
1e66df30a1
|
@ -2,28 +2,7 @@ version: '2.4'
|
||||||
|
|
||||||
services:
|
services:
|
||||||
web:
|
web:
|
||||||
build:
|
image: oliverdavies-uk-web
|
||||||
context: .
|
|
||||||
dockerfile: tools/docker/images/nginx/Dockerfile
|
|
||||||
volumes:
|
|
||||||
- html:/app
|
|
||||||
ports:
|
ports:
|
||||||
- 80:80
|
- 80:80
|
||||||
depends_on:
|
|
||||||
- app
|
|
||||||
- assets
|
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
app:
|
|
||||||
volumes:
|
|
||||||
- assets:/app/source/build
|
|
||||||
- html:/app/output_prod
|
|
||||||
- .:/app
|
|
||||||
command: generate -e prod
|
|
||||||
|
|
||||||
assets:
|
|
||||||
entrypoint: npm
|
|
||||||
command: run production
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
html:
|
|
||||||
|
|
|
@ -2,7 +2,10 @@ version: '2.4'
|
||||||
|
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
image: opdavies/sculpin-serve
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: tools/docker/images/Dockerfile
|
||||||
|
target: app
|
||||||
volumes:
|
volumes:
|
||||||
- assets:/app/source/build
|
- assets:/app/source/build
|
||||||
- /app/output_dev
|
- /app/output_dev
|
||||||
|
@ -11,9 +14,7 @@ services:
|
||||||
- 8000:8000
|
- 8000:8000
|
||||||
|
|
||||||
assets:
|
assets:
|
||||||
build:
|
image: node:14
|
||||||
context: .
|
|
||||||
dockerfile: tools/docker/images/node/Dockerfile
|
|
||||||
volumes:
|
volumes:
|
||||||
- assets:/node/source/build
|
- assets:/node/source/build
|
||||||
- /node/node_modules
|
- /node/node_modules
|
||||||
|
|
21
tools/docker/images/Dockerfile
Normal file
21
tools/docker/images/Dockerfile
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
FROM opdavies/sculpin-serve AS app
|
||||||
|
WORKDIR /app
|
||||||
|
COPY composer.* ./
|
||||||
|
RUN composer install
|
||||||
|
COPY app app
|
||||||
|
COPY source source
|
||||||
|
RUN sculpin generate -e prod
|
||||||
|
|
||||||
|
FROM node:14 AS assets
|
||||||
|
WORKDIR /node
|
||||||
|
COPY package.json .
|
||||||
|
COPY package-lock.json .
|
||||||
|
RUN npm ci
|
||||||
|
COPY . .
|
||||||
|
RUN npm run production
|
||||||
|
|
||||||
|
FROM nginx AS nginx
|
||||||
|
COPY tools/docker/images/nginx/root /
|
||||||
|
WORKDIR /app
|
||||||
|
COPY --from=app /app/output_prod ./
|
||||||
|
COPY --from=assets /node/source/build build
|
|
@ -1,2 +0,0 @@
|
||||||
FROM nginx:1 as base
|
|
||||||
COPY tools/docker/images/nginx/root /
|
|
|
@ -603,4 +603,3 @@ server {
|
||||||
rewrite ^/wp-tailwind-static$ https://wp-tailwind.oliverdavies.uk;
|
rewrite ^/wp-tailwind-static$ https://wp-tailwind.oliverdavies.uk;
|
||||||
rewrite ^/yXhoS$ /talks/things-you-should-know-about-php;
|
rewrite ^/yXhoS$ /talks/things-you-should-know-about-php;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
FROM node:14 AS base
|
|
||||||
WORKDIR /node
|
|
||||||
COPY package*.json ./
|
|
||||||
RUN npm install
|
|
Loading…
Reference in a new issue