test
Browse files- Dockerfile +18 -21
Dockerfile
CHANGED
|
@@ -1,5 +1,4 @@
|
|
| 1 |
-
|
| 2 |
-
FROM php:8.2-apache
|
| 3 |
|
| 4 |
# Install necessary packages and PHP extensions
|
| 5 |
RUN apt-get update && apt-get install -y \
|
|
@@ -18,40 +17,38 @@ RUN apt-get update && apt-get install -y \
|
|
| 18 |
# Install Composer
|
| 19 |
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
| 20 |
|
|
|
|
|
|
|
|
|
|
| 21 |
# Set environment variables for Composer
|
| 22 |
ENV PATH="$PATH:/root/.composer/vendor/bin"
|
| 23 |
|
| 24 |
-
#
|
| 25 |
-
RUN composer global require laravel/installer
|
| 26 |
-
|
| 27 |
-
# Create a new Laravel project directly in the web root
|
| 28 |
RUN laravel new /var/www/html
|
| 29 |
|
| 30 |
# Download and set up phpMyAdmin from GitHub
|
| 31 |
RUN wget https://github.com/phpmyadmin/phpmyadmin/archive/refs/tags/RELEASE_5_1_4.tar.gz -O phpmyadmin.tar.gz \
|
| 32 |
-
&& tar -xzvf phpmyadmin.tar.gz -C /var/www/ \
|
| 33 |
-
&& mv /var/www/phpmyadmin-RELEASE_5_1_4 /var/www/html/phpmyadmin \
|
| 34 |
&& rm phpmyadmin.tar.gz
|
| 35 |
|
| 36 |
# Change Apache to listen on port 7860
|
| 37 |
RUN sed -i 's/Listen 80/Listen 7860/' /etc/apache2/ports.conf \
|
| 38 |
&& sed -i 's/:80/:7860/' /etc/apache2/sites-available/000-default.conf
|
| 39 |
|
| 40 |
-
# Set Apache DocumentRoot to Laravel's public directory
|
| 41 |
-
RUN sed -i 's|/var/www/html|/var/www/html/public|' /etc/apache2/sites-available/000-default.conf
|
| 42 |
-
|
| 43 |
# Set correct permissions for directories
|
| 44 |
-
RUN
|
| 45 |
-
&&
|
| 46 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 47 |
|
| 48 |
# Ensure the SQLite database file and directory have the correct permissions
|
| 49 |
-
RUN
|
| 50 |
-
&&
|
| 51 |
-
&& chown -R www-data:www-data /var/www/html/storage \
|
| 52 |
-
&& chown -R www-data:www-data /var/www/html/bootstrap/cache \
|
| 53 |
-
&& chmod -R 775 /var/www/html/storage \
|
| 54 |
-
&& chmod -R 775 /var/www/html/bootstrap/cache
|
| 55 |
|
| 56 |
# Set environment variables
|
| 57 |
ENV PMA_HOST=mysql-7364790-localbugtv.l.aivencloud.com
|
|
@@ -63,4 +60,4 @@ ENV APACHE_PORT=7860
|
|
| 63 |
EXPOSE 7860
|
| 64 |
|
| 65 |
# Start Apache
|
| 66 |
-
CMD ["apache2-foreground"]
|
|
|
|
| 1 |
+
ROM php:8.2-apache
|
|
|
|
| 2 |
|
| 3 |
# Install necessary packages and PHP extensions
|
| 4 |
RUN apt-get update && apt-get install -y \
|
|
|
|
| 17 |
# Install Composer
|
| 18 |
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
| 19 |
|
| 20 |
+
# Install Laravel
|
| 21 |
+
RUN composer global require laravel/installer
|
| 22 |
+
|
| 23 |
# Set environment variables for Composer
|
| 24 |
ENV PATH="$PATH:/root/.composer/vendor/bin"
|
| 25 |
|
| 26 |
+
# Create a new Laravel project
|
|
|
|
|
|
|
|
|
|
| 27 |
RUN laravel new /var/www/html
|
| 28 |
|
| 29 |
# Download and set up phpMyAdmin from GitHub
|
| 30 |
RUN wget https://github.com/phpmyadmin/phpmyadmin/archive/refs/tags/RELEASE_5_1_4.tar.gz -O phpmyadmin.tar.gz \
|
| 31 |
+
&& tar -xzvf phpmyadmin.tar.gz -C /var/www/html --strip-components=1 \
|
|
|
|
| 32 |
&& rm phpmyadmin.tar.gz
|
| 33 |
|
| 34 |
# Change Apache to listen on port 7860
|
| 35 |
RUN sed -i 's/Listen 80/Listen 7860/' /etc/apache2/ports.conf \
|
| 36 |
&& sed -i 's/:80/:7860/' /etc/apache2/sites-available/000-default.conf
|
| 37 |
|
|
|
|
|
|
|
|
|
|
| 38 |
# Set correct permissions for directories
|
| 39 |
+
RUN chmod -R 777 /var/ \
|
| 40 |
+
&& chmod -R 777 /etc/apache2/
|
| 41 |
+
|
| 42 |
+
# Set correct permissions for phpMyAdmin configuration file
|
| 43 |
+
# (if applicable, ensure the file exists first)
|
| 44 |
+
RUN [ -f /var/www/html/phpmyadmin/config.inc.php ] && chmod 644 /var/www/html/phpmyadmin/config.inc.php || true
|
| 45 |
+
|
| 46 |
+
# Copy all contents of the app folder to the /var/www/html/ directory
|
| 47 |
+
COPY ./php/ /var/www/html/
|
| 48 |
|
| 49 |
# Ensure the SQLite database file and directory have the correct permissions
|
| 50 |
+
RUN chown -R www-data:www-data /var/www/html/ \
|
| 51 |
+
&& chmod -R 777 /var/www/html/
|
|
|
|
|
|
|
|
|
|
|
|
|
| 52 |
|
| 53 |
# Set environment variables
|
| 54 |
ENV PMA_HOST=mysql-7364790-localbugtv.l.aivencloud.com
|
|
|
|
| 60 |
EXPOSE 7860
|
| 61 |
|
| 62 |
# Start Apache
|
| 63 |
+
CMD ["apache2-foreground"]
|