1. Prepare our Laravel application # Run the mix command to package js, css, and img files. If you do not use mix, you can skip npm install. npm run production # Install dependencies in composer.lock composer install --ignore-platform-reqs --optimize-autoloader --no-dev 2. Prepare the Apache configuration file docker/000-default.conf <VirtualHost *:80> # The ServerName directive sets the request scheme, hostname and port that # the server uses to identify itself. This is used when creating # redirection URLs. In the context of virtual hosts, the ServerName # specifies what hostname must appear in the request's Host: header to # match this virtual host. For the default virtual host (this file) this # value is not decisive as it is used as a last resort host regardless. # However, you must set it for any further virtual host explicitly. #ServerName www.example.com ServerAdmin [email protected] DocumentRoot /var/www/html/public # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, # error, crit, alert, emerg. # It is also possible to configure the loglevel for particular # modules, e.g. #LogLevel info ssl:warn ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined # For most configuration files from conf-available/, which are # enabled or disabled at a global level, it is possible to # include a line for only one particular virtual host. For example the # The following line enables the CGI configuration for this host only # after it has been globally disabled with "a2disconf". #Include conf-available/serve-cgi-bin.conf </VirtualHost> 3. Prepare the Dockerfile FROM php:7.3-apache LABEL maintainer="[email protected]" # Set time zone ARG TZ=Asia/Shanghai ENV TZ ${TZ} RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # Install software cron RUN set -eux \ && apt-get update \ && apt-get install -y --no-install-recommends cron \ && apt-get autoremove \ && apt-get autoclean \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* # Install extension ENV PHP_EXTENSION \ pdo_mysql \ bcmath ENV PECL_EXTENSION \ redis RUN docker-php-ext-install $PHP_EXTENSION \ && pecl install $PECL_EXTENSION \ && docker-php-ext-enable $PECL_EXTENSION \ opcache \ && a2enmod rewrite # Access port EXPOSE 80 ARG APP_ENV=development ENV APP_ENV ${APP_ENV} COPY --chown=www-data:www-data . /var/www/html COPY docker/000-default.conf /etc/apache2/sites-available/000-default.conf WORKDIR /var/www/html 4. Prepare Dockerignore file: .dockerignore (optional) /node_modules /.dockerignore /Dockerfile 5. Prepare the image entry file: docker-entrypoint.sh (optional) Note that this file requires execution permissions, but this entry file is not necessary. It is just to execute some cache commands before the application runs. You can click here to learn more about it. #!/usr/bin/env bash php artisan cache:clear php artisan config:cache php artisan route:cache php artisan view:cache apache2-foreground 6. Run the image docker run -p 80:80 . The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM. You may also be interested in:
|
<<: MySQL 5.7.23 winx64 installation and configuration method graphic tutorial under win10
>>: How to use skeleton screen in vue project
Table of contents 1. DateTimePicker date selectio...
This article describes the commonly used MySQL fu...
Table of contents Hidden, descending, and functio...
Create a new server.js yarn init -y yarn add expr...
Preface I believe that in the process of mobile t...
The previous articles introduced the replacement ...
We, humble coders, still have to sing, "You ...
Preface The computer I use is a Mac, and the oper...
Table of contents 1. Vue installation Method 1: C...
Migration is unavoidable in many cases. Hardware ...
1. View the renderings Select forward: Select bac...
Table of contents Overview What is Big O notation...
Disadvantages of single-node database Large-scale...
WeChat applet calculator example, for your refere...
The effect is as follows: Example 1 Example 2: Ta...