Add CI/CD
This commit is contained in:
parent
179ebee693
commit
247cd97c60
34
.gitlab-ci.yml
Normal file
34
.gitlab-ci.yml
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
stages:
|
||||||
|
- build
|
||||||
|
- deploy
|
||||||
|
|
||||||
|
variables:
|
||||||
|
IMAGE_NAME: purwakarta-diskominfo-simedkom-new
|
||||||
|
IMAGE_TAG: v1.0.0
|
||||||
|
CONTAINER_NAME: purwakarta-diskominfo-simedkom-new
|
||||||
|
|
||||||
|
build:
|
||||||
|
stage: build
|
||||||
|
image: docker:latest
|
||||||
|
services:
|
||||||
|
- docker:dind
|
||||||
|
tags:
|
||||||
|
- docker
|
||||||
|
script:
|
||||||
|
- docker info
|
||||||
|
- docker build -t $IMAGE_NAME:$IMAGE_TAG .
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
stage: deploy
|
||||||
|
image: docker:latest
|
||||||
|
services:
|
||||||
|
- docker:dind
|
||||||
|
tags:
|
||||||
|
- docker
|
||||||
|
before_script:
|
||||||
|
- echo -e "$ENV_FILE" > .env
|
||||||
|
script:
|
||||||
|
- docker compose down || true
|
||||||
|
- docker compose up -d --build
|
||||||
|
only:
|
||||||
|
- main
|
||||||
28
Dockerfile
Normal file
28
Dockerfile
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
FROM dunglas/frankenphp:latest
|
||||||
|
|
||||||
|
ENV SERVER_NAME=":80"
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# Copy project ke dalam container
|
||||||
|
COPY . /app
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
libpng-dev \
|
||||||
|
libjpeg-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libzip-dev \
|
||||||
|
libicu-dev \
|
||||||
|
pkg-config \
|
||||||
|
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
||||||
|
&& docker-php-ext-install gd \
|
||||||
|
&& docker-php-ext-install pdo pdo_mysql zip bcmath intl \
|
||||||
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
COPY composer.json composer.lock ./
|
||||||
|
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
||||||
|
|
||||||
|
RUN composer install --no-dev --optimize-autoloader && \
|
||||||
|
composer clear-cache
|
||||||
|
|
||||||
19
docker-compose.yml
Normal file
19
docker-compose.yml
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
services:
|
||||||
|
app:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
image: purwakarta-diskominfo-simedkom-new:v1.0.0
|
||||||
|
# command: >
|
||||||
|
# sh -c "echo 'max_execution_time=300' > /usr/local/etc/php/conf.d/custom.ini && php artisan storage:link && pap artisan optimize:clear && php-fpm"
|
||||||
|
|
||||||
|
container_name: purwakarta-diskominfo-simedkom-new
|
||||||
|
ports:
|
||||||
|
- "8103:80"
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
networks:
|
||||||
|
- gitlab-repo
|
||||||
|
|
||||||
|
networks:
|
||||||
|
gitlab-repo:
|
||||||
|
external: true
|
||||||
Loading…
Reference in New Issue
Block a user