Profile picture

[Docker] 오픈 소스 클라우드 - Nextcloud

JaehyoJJAng2023년 05월 20일

◾️ Nextcloud

image


로컬 서버(데스크탑) 또는 외부 파일 스토리지 호스팅에 유용하게 사용할 수 있는 오픈소스이다.

파일 저장 및 공유 서비스를 포함한 문서 작업, 가상화, 클라우드 등을 하나의 플랫폼 내에서 사용가능하며

구글 드라이브, MS 오피스 등 추가 기능을 써드파티 앱을 통해 모듈식으로 구현할 수 있다.


▪️ 설치


1. 파일 생성

docker-compose.yaml

version: '3.8'

volumes:
  nextcloud:
  db:

services:
  db:
    image: mariadb:10.6
    restart: always
    command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
    volumes:
      - type: volume
        source: db
        target: "/var/lib/mysql"
    environment:
      - MYSQL_ROOT_PASSWORD=QLQLQL123
      - MYSQL_PASSWORD=QLQLQL123
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
    container_name: db
    networks:
      - "nextcloud-net"

  app:
    image: nextcloud
    restart: always
    ports:
      - 8080:80
    links:
      - db
    volumes:
      - type: volume
        source: nextcloud
        target: "/var/www/html"
    environment:
      - MYSQL_PASSWORD=QLQLQL123
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_HOST=db
    container_name: app
    networks:
      - "nextcloud-net"

volumes:
  nextcloud: {}
  db: {}

networks:
  nextcloud-net:
    driver: bridge
    external: false

▪️ 컨테이너 실행

docker-compose up -d --build

▪️ 접속

  • http://localhost:8080 OR http://{SERVER_IP & Domain_Name}:8080주소를 브라우저에 입력하여 접속
  • 새 계정 생성
  • MySQL 데이터베이스 선택
  • 데이터베이스 정보 입력
    • DB명: nextcloud <docker-compose.yaml에 db 컨테이너 환경 변수 값을 사용자가 어떻게 변경했는지에 따라 다름.>
    • 패스워드:
    • 유저명:
    • 호스트: 컨테이너명(db) 또는 {도메인}:3306 OR {IP}:3306

image


Loading script...