first commit
This commit is contained in:
70
Dockerfile
Normal file
70
Dockerfile
Normal file
@@ -0,0 +1,70 @@
|
||||
# PHP-FPM is a FastCGI implementation for PHP.
|
||||
# Read more here: https://hub.docker.com/_/php
|
||||
FROM php:8.2-fpm
|
||||
|
||||
|
||||
RUN apt-get update
|
||||
|
||||
# Install useful tools
|
||||
RUN apt-get -y install apt-utils nano wget dialog vim
|
||||
|
||||
# Install system dependencies
|
||||
RUN apt-get -y install --fix-missing \
|
||||
apt-utils \
|
||||
build-essential \
|
||||
git \
|
||||
curl \
|
||||
libcurl4 \
|
||||
libcurl4-openssl-dev \
|
||||
zlib1g-dev \
|
||||
libzip-dev \
|
||||
zip \
|
||||
libbz2-dev \
|
||||
locales \
|
||||
libmcrypt-dev \
|
||||
libicu-dev \
|
||||
libonig-dev \
|
||||
libxml2-dev
|
||||
|
||||
RUN docker-php-ext-install \
|
||||
exif \
|
||||
pcntl \
|
||||
bcmath \
|
||||
ctype \
|
||||
curl \
|
||||
pcntl \
|
||||
zip
|
||||
|
||||
# Install Postgre PDO
|
||||
RUN apt-get install -y libpq-dev \
|
||||
&& docker-php-ext-configure pgsql -with-pgsql=/usr/local/pgsql \
|
||||
&& docker-php-ext-install pdo pdo_pgsql pgsql
|
||||
|
||||
# Install NPM
|
||||
RUN curl -fsSL https://deb.nodesource.com/setup_lts.x | bash -
|
||||
RUN apt-get install -y nodejs
|
||||
|
||||
# Clear cache
|
||||
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install Composer
|
||||
COPY --from=composer:2.3 /usr/bin/composer /usr/bin/composer
|
||||
|
||||
# Set working directory
|
||||
WORKDIR /var/www/html
|
||||
|
||||
# Add user for laravel application
|
||||
RUN groupadd -g 1000 www
|
||||
RUN useradd -u 1000 -ms /bin/bash -g www www
|
||||
|
||||
# Copy existing application directory contents
|
||||
COPY ./src /var/www/html
|
||||
|
||||
# Copy existing application directory permissions
|
||||
COPY --chown=www:www ./src /var/www/html
|
||||
|
||||
# Change current user to www
|
||||
USER www
|
||||
|
||||
# Set port for application
|
||||
EXPOSE 8000
|
||||
Reference in New Issue
Block a user