Compare commits
3
Commits
136451dc5a
...
4cdf11be3d
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4cdf11be3d
|
||
|
|
0fc181bf12
|
||
|
|
059d2b9d66
|
@@ -1,4 +1,4 @@
|
||||
FROM docker.io/php:8.5-fpm-alpine3.23 AS build
|
||||
FROM docker.io/php:8.5-fpm-alpine3.23 AS php
|
||||
|
||||
RUN apk --no-cache add pcre2 libbz2 libpng libwebp libjpeg-turbo icu-libs freetype oniguruma libzip jq \
|
||||
&& apk add --no-cache --virtual .phpize-deps icu-dev libpng-dev bzip2-dev libwebp-dev libjpeg-turbo-dev freetype-dev oniguruma-dev libzip-dev pcre2-dev ${PHPIZE_DEPS} \
|
||||
@@ -29,20 +29,37 @@ RUN apk --no-cache add pcre2 libbz2 libpng libwebp libjpeg-turbo icu-libs freety
|
||||
|
||||
COPY docker/php/conf/app-fpm.conf /usr/local/etc/php-fpm.d/app-fpm.conf
|
||||
|
||||
FROM build AS app_build_for_production
|
||||
FROM docker.io/nginx:1.31-alpine AS nginx
|
||||
|
||||
COPY docker/web/conf/default.conf.template /etc/nginx/templates/default.conf.template
|
||||
COPY docker/web/conf/fastcgi_params /etc/nginx/fastcgi_params
|
||||
COPY docker/web/start.sh /usr/local/bin/start
|
||||
|
||||
RUN chmod 755 /usr/local/bin/start
|
||||
|
||||
FROM nginx AS web_build_for_production
|
||||
|
||||
WORKDIR /home/app
|
||||
COPY application /home/app
|
||||
|
||||
RUN apk --no-cache add git nodejs npm \
|
||||
&& npm install && npm run build \
|
||||
&& rm -rf /home/app/node_modules
|
||||
|
||||
FROM php AS app_build_for_production
|
||||
WORKDIR /home/app
|
||||
|
||||
COPY application /home/app
|
||||
|
||||
RUN apk --no-cache add git \
|
||||
RUN apk --no-cache add git \
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
&& composer install --optimize-autoloader --no-dev \
|
||||
&& rm -rf /home/app/.env
|
||||
&& rm -f /home/app/.env
|
||||
|
||||
|
||||
FROM build AS production
|
||||
FROM php AS app_production
|
||||
|
||||
COPY --from=app_build_for_production /home/app /var/www/html
|
||||
COPY --from=web_build_for_production /home/app/public/build/ /var/www/html/public/build
|
||||
COPY docker/php/start.sh /usr/local/bin/start
|
||||
|
||||
WORKDIR /var/www/html
|
||||
@@ -57,8 +74,18 @@ USER www-data
|
||||
EXPOSE 9000
|
||||
CMD ["/usr/local/bin/start"]
|
||||
|
||||
FROM nginx AS web_production
|
||||
|
||||
FROM build AS develop
|
||||
COPY --from=web_build_for_production /home/app/public /usr/share/nginx/html
|
||||
RUN rm -f /usr/share/nginx/html/50x.html /usr/share/nginx/html/index.php /usr/share/nginx/html/.htaccess
|
||||
|
||||
WORKDIR /usr/share/nginx/html
|
||||
|
||||
EXPOSE 80
|
||||
CMD ["/usr/local/bin/start"]
|
||||
|
||||
# develop
|
||||
FROM php AS app_develop
|
||||
|
||||
WORKDIR /var/www/html
|
||||
|
||||
@@ -75,15 +102,12 @@ USER www-data
|
||||
EXPOSE 9000
|
||||
CMD ["/usr/local/bin/start"]
|
||||
|
||||
|
||||
|
||||
FROM build AS artisan
|
||||
FROM php AS artisan
|
||||
WORKDIR /var/www/html
|
||||
STOPSIGNAL SIGTERM
|
||||
ENTRYPOINT ["php", "/var/www/html/artisan"]
|
||||
|
||||
|
||||
FROM build AS composer
|
||||
FROM php AS composer
|
||||
WORKDIR /var/www/html
|
||||
STOPSIGNAL SIGTERM
|
||||
RUN apk --no-cache add git \
|
||||
@@ -91,11 +115,15 @@ RUN apk --no-cache add git \
|
||||
RUN mkdir "/.composer" && chmod -R 0777 "/.composer"
|
||||
ENTRYPOINT ["composer"]
|
||||
|
||||
|
||||
|
||||
FROM build AS npm
|
||||
FROM php AS npm
|
||||
RUN mkdir "/.npm" && chmod -R 0777 "/.npm"
|
||||
WORKDIR /var/www/html
|
||||
STOPSIGNAL SIGTERM
|
||||
RUN apk --no-cache add nodejs npm
|
||||
ENTRYPOINT ["npm"]
|
||||
|
||||
FROM nginx AS web_develop
|
||||
WORKDIR /usr/share/nginx/html
|
||||
|
||||
EXPOSE 80
|
||||
CMD ["/usr/local/bin/start"]
|
||||
@@ -1,31 +0,0 @@
|
||||
FROM docker.io/nginx:1.31-alpine AS build
|
||||
|
||||
COPY docker/web/conf/default.conf.template /etc/nginx/templates/default.conf.template
|
||||
COPY docker/web/conf/fastcgi_params /etc/nginx/fastcgi_params
|
||||
COPY docker/web/start.sh /usr/local/bin/start
|
||||
|
||||
RUN chmod 755 /usr/local/bin/start
|
||||
|
||||
FROM build AS app_build_for_production
|
||||
|
||||
WORKDIR /home/app
|
||||
COPY application /home/app
|
||||
|
||||
RUN apk --no-cache add git nodejs npm \
|
||||
&& npm install && npm run build \
|
||||
&& rm -rf /home/app/node_modules
|
||||
|
||||
FROM build AS production
|
||||
|
||||
COPY --from=app_build_for_production /home/app/public /usr/share/nginx/html
|
||||
|
||||
WORKDIR /usr/share/nginx/html
|
||||
|
||||
EXPOSE 80
|
||||
CMD ["/usr/local/bin/start"]
|
||||
|
||||
FROM build AS develop
|
||||
WORKDIR /usr/share/nginx/html
|
||||
|
||||
EXPOSE 80
|
||||
CMD ["/usr/local/bin/start"]
|
||||
@@ -3,8 +3,9 @@ services:
|
||||
web:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/web/Dockerfile
|
||||
target: DEVELOP
|
||||
dockerfile: docker/Dockerfile
|
||||
target: WEB_PRODUCTION
|
||||
# restart: always
|
||||
depends_on:
|
||||
- app
|
||||
ports:
|
||||
@@ -21,8 +22,8 @@ services:
|
||||
app:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/php/Dockerfile
|
||||
target: PRODUCTION
|
||||
dockerfile: docker/Dockerfile
|
||||
target: APP_PRODUCTION
|
||||
# restart: always
|
||||
depends_on:
|
||||
- db
|
||||
@@ -37,8 +38,8 @@ services:
|
||||
queue:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/php/Dockerfile
|
||||
target: PRODUCTION
|
||||
dockerfile: docker/Dockerfile
|
||||
target: APP_PRODUCTION
|
||||
# restart: always
|
||||
depends_on:
|
||||
- app
|
||||
@@ -52,8 +53,8 @@ services:
|
||||
scheduler:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/php/Dockerfile
|
||||
target: PRODUCTION
|
||||
dockerfile: docker/Dockerfile
|
||||
target: APP_PRODUCTION
|
||||
# restart: always
|
||||
depends_on:
|
||||
- app
|
||||
|
||||
@@ -1,15 +1,29 @@
|
||||
#version: '3.7'
|
||||
services:
|
||||
web:
|
||||
# image: korelf/my-projects-website-web:0.7.0 # docker hub
|
||||
image: docker.mdhub.kor-elf.net/kor-elf/my-projects-website-web:0.7.0 # MDHub
|
||||
# restart: always
|
||||
depends_on:
|
||||
- app
|
||||
ports:
|
||||
- ${DOCKER_WEB_PORT}:80
|
||||
environment:
|
||||
IS_GZIP: 0
|
||||
# FRONTEND_PORT: ${DOCKER_WEB_PORT}
|
||||
BACKEND_HOST: app
|
||||
BACKEND_PORT: 9000
|
||||
TRUSTED_PROXY_CIDR: 172.16.0.0/12
|
||||
volumes:
|
||||
- ./app/storage/app/public:/usr/share/nginx/html/storage
|
||||
app:
|
||||
# image: korelf/my-projects-website:0.6.0 # docker hub
|
||||
image: docker.mdhub.kor-elf.net/kor-elf/my-projects-website:0.6.0 # MDHub
|
||||
# image: korelf/my-projects-website-app:0.7.0 # docker hub
|
||||
image: docker.mdhub.kor-elf.net/kor-elf/my-projects-website-app:0.7.0 # MDHub
|
||||
# restart: always
|
||||
depends_on:
|
||||
- db
|
||||
- app-redis
|
||||
- captcha-app
|
||||
ports:
|
||||
- ${DOCKER_APP_PORT}:9000
|
||||
env_file: app/.env
|
||||
environment:
|
||||
CONTAINER_ROLE: app
|
||||
@@ -20,8 +34,8 @@ services:
|
||||
# - ./app/translate/authorized_key.json:/var/www/html/storage/translation_service/authorized_key.json
|
||||
|
||||
queue:
|
||||
# image: korelf/my-projects-website:0.6.0 # docker hub
|
||||
image: docker.mdhub.kor-elf.net/kor-elf/my-projects-website:0.6.0 # MDHub
|
||||
# image: korelf/my-projects-website-app:0.7.0 # docker hub
|
||||
image: docker.mdhub.kor-elf.net/kor-elf/my-projects-website-app:0.7.0 # MDHub
|
||||
# restart: always
|
||||
depends_on:
|
||||
- app
|
||||
@@ -29,6 +43,7 @@ services:
|
||||
- app-redis
|
||||
environment:
|
||||
CONTAINER_ROLE: queue
|
||||
APP_ENV: production
|
||||
env_file: app/.env
|
||||
volumes:
|
||||
- ./app/storage/app:/var/www/html/storage/app
|
||||
@@ -36,8 +51,8 @@ services:
|
||||
# - ./app/translate/authorized_key.json:/var/www/html/storage/translation_service/authorized_key.json
|
||||
|
||||
scheduler:
|
||||
# image: korelf/my-projects-website:0.6.0 # docker hub
|
||||
image: docker.mdhub.kor-elf.net/kor-elf/my-projects-website:0.6.0 # MDHub
|
||||
# image: korelf/my-projects-website-app:0.7.0 # docker hub
|
||||
image: docker.mdhub.kor-elf.net/kor-elf/my-projects-website-app:0.7.0 # MDHub
|
||||
# restart: always
|
||||
depends_on:
|
||||
- app
|
||||
@@ -45,6 +60,7 @@ services:
|
||||
- app-redis
|
||||
environment:
|
||||
CONTAINER_ROLE: scheduler
|
||||
APP_ENV: production
|
||||
env_file: app/.env
|
||||
volumes:
|
||||
- ./app/storage/app:/var/www/html/storage/app
|
||||
|
||||
+11
-11
@@ -3,8 +3,8 @@ services:
|
||||
web:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/web/Dockerfile
|
||||
target: DEVELOP
|
||||
dockerfile: docker/Dockerfile
|
||||
target: WEB_DEVELOP
|
||||
depends_on:
|
||||
- app
|
||||
ports:
|
||||
@@ -21,8 +21,8 @@ services:
|
||||
app:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/php/Dockerfile
|
||||
target: DEVELOP
|
||||
dockerfile: docker/Dockerfile
|
||||
target: APP_DEVELOP
|
||||
depends_on:
|
||||
- db
|
||||
- app-redis
|
||||
@@ -36,8 +36,8 @@ services:
|
||||
queue:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/php/Dockerfile
|
||||
target: DEVELOP
|
||||
dockerfile: docker/Dockerfile
|
||||
target: APP_DEVELOP
|
||||
depends_on:
|
||||
- db
|
||||
- app
|
||||
@@ -50,8 +50,8 @@ services:
|
||||
scheduler:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/php/Dockerfile
|
||||
target: DEVELOP
|
||||
dockerfile: docker/Dockerfile
|
||||
target: APP_DEVELOP
|
||||
depends_on:
|
||||
- db
|
||||
- app
|
||||
@@ -146,7 +146,7 @@ services:
|
||||
artisan:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/php/Dockerfile
|
||||
dockerfile: docker/Dockerfile
|
||||
target: ARTISAN
|
||||
user: "${UID}:${GID}"
|
||||
volumes:
|
||||
@@ -155,7 +155,7 @@ services:
|
||||
composer:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/php/Dockerfile
|
||||
dockerfile: docker/Dockerfile
|
||||
target: COMPOSER
|
||||
user: "${UID}:${GID}"
|
||||
volumes:
|
||||
@@ -164,7 +164,7 @@ services:
|
||||
npm:
|
||||
build:
|
||||
context: app
|
||||
dockerfile: docker/php/Dockerfile
|
||||
dockerfile: docker/Dockerfile
|
||||
target: NPM
|
||||
user: "${UID}:${GID}"
|
||||
volumes:
|
||||
|
||||
Reference in New Issue
Block a user