Để 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.
Nội dung bài viết
Tạo docker network
Tạo network riêng
1 | 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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | 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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | 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
1 2 3 4 5 | 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:
1 2 | 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
Bài viết liên quan
- Viết mã nguồn tự động thông báo điểm UIT (Phần 2)
- Viết mã nguồn tự động thông báo điểm UIT (Phần 1)
- Sử dụng .htaccess, php để chuyển hướng đổi tên miền và hiện thông báo
- Error: smtp connect() failed khi dùng PHPMailer
- CWP – CentOS Web Panel: Lỗi không thể add user vào mysql
- Sử dụng Click để tạo command-line interface (CLI) trong Python
- Setup VPN server v2ray vmess + websocket + no TLS port 80
- Phát sóng Radio FM bằng Raspberry Pi 3
- [PHP] Mã nguồn đăng thời khóa biểu lên website CMS
- Cài đặt PPTP VPN trên CentOS 6