라라벨 소스와 도커파일들이 있는 전제로 움직이는 샘플인데

시간되면 깃허브에 올리겠습니다.

지금은 참고만 하시길...

디렉토리 구성

프로젝트
├── docker
│   ├── mysql
│   ├── nginx
│   └── php
├── docker-compose.yml
├── laravel

라라벨 초기상태 소스를 laravel로 배치
첨부 docker/php/Dockerfile작성하시고

아래처럼 기동

(nginx사용하시려면 컨피그파일 만들어서 넣어주시고 주석 해제 해주시고 기동하셔야함)

cd prj패스
docker-compose up
# 확인은 http://localhost:8000

docker-compose.yml

version: '3'
services:
#  nginx:
#    image: nginx:stable-alpine
#    environment:
#      APP_ENV: dev
#      TZ: Asia/Tokyo
#    ports:
#      - '80:80'
#    depends_on:
#      - app
#    volumes:
#      - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
#      - .:/var/www/html
  app:
    build: ./docker/php
    container_name: app
    #for dev
    command: php artisan serv --host 0.0.0.0
    environment:
      APP_ENV: dev
    ports:
      - "8000:8000"
    volumes:
      - ./laravel:/var/www/html/laravel:cached
    working_dir: /var/www/html/laravel
    depends_on:
      - db
  db:
    image: mysql:5.7
    container_name: db
    command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci
    environment:
      TZ: Asia/Tokyo
      MYSQL_DATABASE:
      MYSQL_USER: test
      MYSQL_PASSWORD: test
      MYSQL_ROOT_PASSWORD: test
    ports:
      - "3306:3306"
    volumes:
      - mysql-data:/var/lib/mysql
      - ./docker/mysql/initdb.d:/docker-entrypoint-initdb.d

volumes:
  mysql-data:

docker/php/Dockerfile

vue사용시를 위해 node/npm도 함께 인스톨합니다.

FROM php:7.3-fpm

ENV TZ='Asia/Tokyo'
RUN echo "alias ff='find . -name'" >> ~/.bashrc \
&& echo "alias ll='ls --color=auto -lA'" >> ~/.bashrc \
&& echo "alias grep='grep --color=auto'" >> ~/.bashrc

# install composer
RUN cd /usr/bin \
&& curl -s http://getcomposer.org/installer | php \
&& ln -s /usr/bin/composer.phar /usr/bin/composer

RUN apt-get update && apt-get install -y \
libpq-dev \
procps \
git \
zip \
unzip \
vim \
&& pecl install xdebug \
&& docker-php-ext-install pdo_mysql opcache \
&& docker-php-ext-enable xdebug

RUN curl -sL https://deb.nodesource.com/setup_10.x | bash - \
&& apt-get install -y nodejs \
&& npm install -g npm

RUN apt-get clean \
&& rm -rf /var/lib/apt/lists/*


WORKDIR /var/www/html/laravel

'php' 카테고리의 다른 글

php8 vs 언어별 벤치마크!  (3) 2020.11.01

+ Recent posts