Docker

[Docker] OwnCloud (Private Cloud Storage) 구축하기

IT-PAPA 2024. 7. 15. 06:25
728x90
반응형

ownCloud는 오픈 소스 파일 호스팅 및 동기화 소프트웨어입니다. 주요 특징과 기능에 대해 간단히 설명해 드리겠습니다:

1. 파일 저장 및 공유: 개인 또는 기업용 클라우드 스토리지 솔루션을 제공합니다.
2. 크로스 플랫폼 지원: Windows, macOS, Linux, iOS, Android 등 다양한 플랫폼에서 사용 가능합니다.
3. 파일 동기화: 여러 기기 간 파일을 자동으로 동기화합니다.
4. 보안: 엔드-투-엔드 암호화를 지원하여 데이터 보안을 강화합니다.
5. 협업 기능: 파일 공유, 공동 편집 등의 협업 도구를 제공합니다.
6. 확장성: 플러그인과 앱을 통해 기능을 확장할 수 있습니다.
7. 자체 호스팅: 사용자가 직접 서버를 구축하고 관리할 수 있어 데이터 주권을 보장합니다.
8. 버전 관리: 파일의 이전 버전을 저장하고 복원할 수 있습니다.

ownCloud는 Dropbox나 Google Drive와 같은 상용 서비스의 대안으로 많이 사용되며, 특히 데이터 프라이버시와 제어에 관심이 있는 개인이나 조직에게 적합합니다.

 

[Docker] 도커의 모든 것, 도커 추천 이미지!!! (tistory.com)

 

[Docker] 도커의 모든 것, 도커 추천 이미지!!!

필자는 이때까지 docker로 구축한 모든 목록을 이 블로그에 담았다. 앞으로도 이 페이지는 필자가 도커를 구축할 때마다 업데이트하려고 하니, 즐겨찾기 해두면 나쁘지 않을 거 같다. 유용하게 사

betwe.tistory.com

 

docker-compose.yml 파일

docker-compose.yml
version: "3"

volumes:
  files:
    driver: local
  mysql:
    driver: local
  redis:
    driver: local

services:
  owncloud:
    image: owncloud/server:${OWNCLOUD_VERSION}
    container_name: owncloud_server
    restart: always
    ports:
      - ${HTTP_PORT}:8080
    depends_on:
      - mariadb
      - redis
    environment:
      - OWNCLOUD_DOMAIN=${OWNCLOUD_DOMAIN}
      - OWNCLOUD_TRUSTED_DOMAINS=${OWNCLOUD_TRUSTED_DOMAINS}
      - OWNCLOUD_DB_TYPE=mysql
      - OWNCLOUD_DB_NAME=owncloud
      - OWNCLOUD_DB_USERNAME=owncloud
      - OWNCLOUD_DB_PASSWORD=owncloud
      - OWNCLOUD_DB_HOST=mariadb
      - OWNCLOUD_ADMIN_USERNAME=${ADMIN_USERNAME}
      - OWNCLOUD_ADMIN_PASSWORD=${ADMIN_PASSWORD}
      - OWNCLOUD_MYSQL_UTF8MB4=true
      - OWNCLOUD_REDIS_ENABLED=true
      - OWNCLOUD_REDIS_HOST=redis
    healthcheck:
      test: ["CMD", "/usr/bin/healthcheck"]
      interval: 30s
      timeout: 10s
      retries: 5
    volumes:
      - files:/mnt/data

  mariadb:
    image: mariadb:10.11 # minimum required ownCloud version is 10.9
    container_name: owncloud_mariadb
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=owncloud
      - MYSQL_USER=owncloud
      - MYSQL_PASSWORD=owncloud
      - MYSQL_DATABASE=owncloud
      - MARIADB_AUTO_UPGRADE=1
    command: ["--max-allowed-packet=128M", "--innodb-log-file-size=64M"]
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-u", "root", "--password=owncloud"]
      interval: 10s
      timeout: 5s
      retries: 5
    volumes:
      - mysql:/var/lib/mysql

  redis:
    image: redis:6
    container_name: owncloud_redis
    restart: always
    command: ["--databases", "1"]
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 5s
      retries: 5
    volumes:
      - redis:/data

.env 파일

OWNCLOUD_VERSION=10.14
OWNCLOUD_DOMAIN=localhost:8080
OWNCLOUD_TRUSTED_DOMAINS=owncloud.example.com
ADMIN_USERNAME=admin
ADMIN_PASSWORD=admin
HTTP_PORT=18080

 

docker-compose 시작

docker-compose up -d

 

서비스 URL 접속

http://[서버 IP]:18080

서비스 URL 접속
서비스 URL 접속
로그인 완료 후 메인 화면
로그인 완료 후 메인 화면
설정 메인 화면
설정 메인 화면
외부 저장소 설정 화면
외부 저장소 설정 화면
앱 설치 화면
앱 설치 화면

 

docker-comopse 중지

docker-compose down

 

참고사이트

Installing with Docker :: Documentation for ownCloud (A Kiteworks Company)

 

Installing with Docker

Installing with Docker

doc.owncloud.com

 

728x90
반응형
LIST