Belajar Docker di local

 docker-lab/


├── mysql-global/

├── app1/
│ ├── docker-compose.yml
│ ├── Dockerfile
│ └── (source Laravel)

mkdir mysql-global
cd mysql-global

ini docker-compose.yml
services:
  mysql:
    image: mysql:8.0
    container_name: mysql-global
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: root
    ports:
      - "3306:3306"
    volumes:
      - mysql_data:/var/lib/mysql
    networks:
      - global-network

volumes:
  mysql_data:

networks:
  global-network:
    name: global-network

docker compose up -d = jalankan

Setup di app
Dockerfile
FROM php:8.3-fpm

RUN apt-get update && apt-get install -y \
    git \
    curl \
    unzip \
    libpng-dev \
    libonig-dev \
    libxml2-dev \
    libzip-dev \
    zip \
    nginx

RUN docker-php-ext-install pdo pdo_mysql mbstring exif pcntl bcmath gd zip

COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

WORKDIR /var/www

docker-compose.yml
services:
  app1:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: app1
    restart: unless-stopped
    working_dir: /var/www
    volumes:
      - .:/var/www
    ports:
      - "8001:8000"
    command: php artisan serve --host=0.0.0.0 --port=8000
    networks:
      - global-network

networks:
  global-network:
    external: true

docker compose up -d --build = jalankan

docker exec -it app1 bash
composer install
php artisan key:generate
php artisan migrate

http://localhost:8001

Share on Google Plus

About Arwan Triwidianto

    Blogger Comment
    Facebook Comment

0 komentar:

Posting Komentar