7. ☁️ NEXTCLOUD

7.1. Tạo thư mục và cấu hình

bash

mkdir -p ~/nextcloud && cd ~/nextcloud

7.2. Tạo file docker-compose.yml

yaml

version: '3.8'

services:
  db:
    image: mariadb:10.11
    container_name: nextcloud_db
    restart: unless-stopped
    command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
    environment:
      MYSQL_ROOT_PASSWORD: Your_Password
      MYSQL_DATABASE: nextcloud
      MYSQL_USER: nextcloud
      MYSQL_PASSWORD: Your_Password
    volumes:
      - db_data:/var/lib/mysql
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
      interval: 10s
      timeout: 5s
      retries: 5
    networks:
      - nextcloud_network

  redis:
    image: redis:7-alpine
    container_name: nextcloud_redis
    restart: unless-stopped
    command: redis-server --requirepass Your_Password
    volumes:
      - redis_data:/data
    networks:
      - nextcloud_network

  app:
    image: nextcloud:stable
    container_name: nextcloud_app
    restart: unless-stopped
    ports:
      - "8081:80"
    environment:
      - MYSQL_HOST=db
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_PASSWORD=Your_Password
      - REDIS_HOST=redis
      - REDIS_HOST_PORT=6379
      - REDIS_HOST_PASSWORD=Your_Password
      - NEXTCLOUD_ADMIN_USER=admin
      - NEXTCLOUD_ADMIN_PASSWORD=Your_Password
      - NEXTCLOUD_TRUSTED_DOMAINS=192.168.3.5:8081 cloud.huancoc.com
    volumes:
      - nextcloud_data:/var/www/html
    depends_on:
      db:
        condition: service_healthy
      redis:
        condition: service_started
    networks:
      - nextcloud_network

volumes:
  db_data:
  redis_data:
  nextcloud_data:

networks:
  nextcloud_network:
    driver: bridge

7.3. Khởi chạy

bash

docker compose up -d

7.4. Sửa cấu hình cho HTTPS

bash

docker exec -it nextcloud_app bash
apt update && apt install nano -y
nano config/config.php

Thêm vào trước dòng );:

php

  'overwrite.cli.url' => 'https://cloud.huancoc.com',
  'overwriteprotocol' => 'https',
  'trusted_proxies' =>
  array (
    0 => '192.168.3.5',
  ),

Restart:

bash

docker restart nextcloud_app

7.5. Cấu hình trên Nginx Proxy Manager

  • Domain: cloud.huancoc.com
  • Scheme: http
  • Forward IP: 192.168.3.5
  • Forward Port: 8081
  • SSL: Request Let’s Encrypt và bật Force SSL

By huannv

Leave a Reply

Your email address will not be published. Required fields are marked *