簡體   English   中英

如何使用 docker 將 laravel 和 postgres 容器化?

[英]How to containerize laravel and postgres using docker?

請幫助我提供 dockerfile 和 docker-compose 文件的代碼,我需要 laravel 設置和 postgres。

這是我的 docker 文件

FROM php:7.4

RUN apt-get update && apt-get install -y \
        libfreetype6-dev \
        libjpeg62-turbo-dev \
        libmcrypt-dev \
        libpng-dev \
        zlib1g-dev \
        libpq-dev \
        libxml2-dev \
        libzip-dev \
        libonig-dev \
        graphviz \
    && docker-php-ext-configure gd \
    && docker-php-ext-install -j$(nproc) gd \
    && docker-php-ext-install pdo_mysql \
    && docker-php-ext-install pdo_psql \
    && docker-php-ext-install zip \
    && docker-php-ext-install sockets \
    && docker-php-source delete \
    && curl -sS https://getcomposer.org/installer | php -- \
     --install-dir=/usr/local/bin --filename=composer

WORKDIR /var/www/html
COPY . .
RUN composer install

CMD php artisan serve --host=0.0.0.0
EXPOSE 8000

這是 docker-compose.yml 文件

version: '3'
services:
  php_4:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - ./:/var/www/html
    ports:
      - "8000:8000"
    depends_on:
      - postgres_4

  postgres_4:
    image: postgres
    restart: unless-stopped
    ports:
      - "5433:5432"
    volumes:
      - ./docker/postgres:/var/lib/postgresql/data
    environment:
      POSTGRES_USER: root
      POSTGRES_PASSWORD: root
      POSTGRES_DB: lara_4
      POSTGRES_HOST_AUTH_METHOD: "trust"

兩者都不起作用,給出不同的錯誤。 SO please anyone give fresh code for both dockerfile and docker-compose file for laravel with postgresql using docker.

您應該在 docker-compose.yml 文件中指定 web 服務器,即 nginx

如果您剛開始使用 Laravel + Docker,您應該看看Laravel Sail

對於您的一般問題,請編輯您的問題並插入具體錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM