Sử dụng docker compose để chạy nukeviet

Để chạy nukeviet trên các máy máy chủ, VPS không cài đặt sẵn php, và các lib hỗ trợ cho nukeviet chúng ta có thể sử dụng docker compose để cài đặt nukeviet một cách linh hoạt hơn.

Tạo docker network

Tạo network riêng

docker network create --driver=bridge --subnet=11.11.0.0/16 netw

Sau khi tạo xong chúng ta sẽ được phép sử dụng dãy IP 11.11.x.x

Thiết lập file Docker compose

Tạo các file dưới đây

php.Dockerfile

FROM php:7.3-apache

RUN docker-php-ext-install pdo pdo_mysql

RUN apt-get update -y && apt-get install -y libpng-dev

RUN apt-get update && \
    apt-get install -y \
        zlib1g-dev 

RUN apt-get install -y \
        libzip-dev \
        zip \
  && docker-php-ext-install zip
 
RUN a2enmod rewrite

RUN apt-get update && apt-get install -y \ 
libfreetype6-dev libjpeg62-turbo-dev \ 
libgd-dev libpng-dev
RUN docker-php-ext-configure gd \ 
--with-freetype-dir=/usr/include/ \ 
--with-jpeg-dir=/usr/include/
RUN docker-php-ext-install gd

docker-compose.yml

version: '3.8'
services:
  php-apache:
    container_name: php-apache
    build:
      context: .
      dockerfile: ./php.Dockerfile
    volumes:
      - ./www:/var/www/html/
    environment:
      DB_HOST: "${DB_HOST}"
      DB_NAME: "${DB_NAME}"
      DB_USER: "${DB_USER}"
      DB_PASSWORD: "${DB_PASSWORD}"

    restart: always
    networks:
      default:
        ipv4_address: "${IP}"

networks:
    default:
        external:
            name: netw

Tạo file .env để khai báo biến môi trường

IP=11.11.1.100
DB_HOST=localhost
DB_NAME=dbname
DB_USER=user
DB_PASSWORD=your_password

Khai báo thông tin database và thông tin địa chỉ ip mà container sẽ sử dụng, sau khi start docker compose lên bạn có thể truy cập website bằng http://11.11.1.100

Database info bạn có thể cài đặt riêng, trong bài hướng dẫn này hiện mình không thêm mysql vào đây.

Download source nukeviet

Tải source code nukeviet và đặt vào trong folder tên www sau đó sử dụng lệnh sau `sudo chown -R www-data:www-data www/`

Start Docker compose

Sau khi đã chuẩn bị đầy đủ như trên, bạn tiến hành khởi chạy nuketviet bằng docker compose bằng các lệnh sau:

docker-compose up
docker-compose up -d # khởi chạy trong nền

Đính kèm source code tham khảo tại: https://github.com/miticc06/nukeviet-docker-compose

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *