-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerFile
More file actions
43 lines (31 loc) · 1.15 KB
/
DockerFile
File metadata and controls
43 lines (31 loc) · 1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# Dockerfile untuk Aplikasi Laravel
# --- Tahap 1: Base Image & PHP Dependencies ---
# Kita mulai dari gambar dasar resmi PHP dengan Composer
FROM composer:2 as vendor
WORKDIR /app
COPY database/ database/
COPY composer.json composer.lock ./
# Install semua dependensi composer
RUN composer install \
--ignore-platform-reqs \
--no-interaction \
--no-plugins \
--no-scripts \
--prefer-dist
# --- Tahap 2: Setup Aplikasi Utama ---
# Kita gunakan gambar PHP-FPM dengan Nginx untuk web server
FROM webdevops/php-nginx:8.2-alpine
# Set variabel lingkungan yang dibutuhkan oleh image dasar ini
ENV WEB_DOCUMENT_ROOT /app/public
ENV APP_ENV production
ENV LOG_CHANNEL stderr
# Salin file-file aplikasi Anda
COPY . /app
# Salin dependensi yang sudah di-install dari tahap sebelumnya
COPY --from=vendor /app/vendor/ /app/vendor/
# Atur kepemilikan file agar web server bisa menulis ke folder storage dan bootstrap/cache
RUN chown -R application:application /app/storage /app/bootstrap/cache
# Di Render, kita tidak perlu mengekspos port secara manual
# Aplikasi akan berjalan di port internal yang disediakan Render
CMD ["/usr/local/bin/runner"]
# test commit