ownCloud là dịch vụ lưu trữ mã nguồn mở, và có thể triển khai ngay tại trên Linux Server. Tiện lợi hơn thế, ownCloud đã được đóng gói dưới dạng image của container, và có thể triển khai một cách dễ dàng nhanh chóng thông qua Docker.

Lần đầu tiên xuất hiện trong những tháng đầu năm 2010 bởi Frank Karlitschek, ownCloud đến nay đã dần hoàn thiện và có thể được mang vào môi trường doanh nghiệp để hoạt động một cách đáng tin cậy, bằng chứng là sau 1 năm bắt đầu cho ra mắt phiên bản đầu tiên, công ty ownCloud Inc. đã được thành lập dưới sự sáng lập của 3 nhà sáng lập Markus Rex, Holger Dyrof và cha đẻ của sản phẩm Karlitschek, và chỉ trong 2 năm sau đó, công ty này đã huy động được tổng số vốn 6.3 triệu USD trong năm 2014.

Tính đến hiện tại, ownCloud đã ra đến phiên bản 10.0.6 vào ngày 31 tháng 1 năm 2018 vừa rồi, sau 8 năm kể từ lần ra mắt phiên bản 1.0 beta đầu tiên vào tháng 3 năm 2010.

Mặc dù tuổi đời 8 năm của một sản phẩm cũng còn được xem là khá mới mẻ này, nhưng chúng ta cũng thử sử dụng, trải nghiệm và đưa ra đánh giá của riêng mình, hoặc trong quá trình công tác trong ngành IT, chúng ta có thể tích hợp nó vào một giải pháp nào khác hơn, để tạo nên một tổng thể hoàn chỉnh cho giải pháp ban đầu.

Thiết kế của ownCloud

Về thiết kế thì đây hướng đến một nền tảng dựa trên website, và không đặt sự rườm ra lên client bằng việc cài một ứng dụng nào cả. Vì thế ownCloud có thể được truy cập bằng giao thức HTTP hay HTTPS thông qua trình duyệt web. Không dừng lại ở đó, đội ngũ phát triển còn đưa ra một lựa chọn cho các thiết bị di động có thể sử dụng apps để truy cập, hỗ trợ cả iOS và Android.

Các tập tin và dữ liệu (như calendar, contacts, bookmar) có thể được truy cập, quản lý, và upload thông qua trình duyệt mà không cần cài thêm bất kì một chương trình nào hay plugin nào.

Hệ thống định danh trên ownCloud được quản lý bằng username & password thông qua một giao diện đăng nhập tương đối trực quan và thiết kế hiện đại.

Về mặt kỹ thuyệt thì ownCloud server được lập trình bằng PHP và JavaScript. Cùng với đó là việc tương tác và truy cập từ xa được cung cấp bởi WebDAV server. Ngoài ra còn có thể tích hợp ownCloud với Database Management Systems bao gồm SQLite, MariaDB, MySQL, Oracle Database, và cả PostgreSQL.

Tính năng

Các tập tin chứa trên ownCloud có thể được lưu trữ theo cách thông thường nhất, dễ dàng quản trị và có thể truy cập thông qua WebDAV, các tập tin này đều được mã hóa trong suốt quá trình truyền tải và trong thời gian lưu trữ tại ownCloud. OwnCloud có thể động bộ với local clients chạy hệ điều hành Windows, macOS, và nhiều distro khác của Linux.

Về việc phân quyền, ownCloud sử dụng đơn vị phân quyền là user và group thông qua OpenID hoặc LDAP. Các dữ liệu được phân quyền dựa trên các cấp bậc user/group với các quyền như đọc/ghi giữa các user và group khác nhau, theo định nghĩa của người quản trị. Mở rộng hơn thế, người dùng còn có thể chia sẻ tập tin bằng cách tạo một public URLs khi chia sẻ, public URLs này sẽ có thời hạn tồn tại (expiration) và cũng có thể buộc người sử dụng phải nhập password trước khi truy cập.

Về khả năng mở rộng, ownCloud được thiết kế để có thể kết nối đến các dịch vụ lưu trữ lớn hơn như Dropbox, Google Drive và Amazon S3. Tất nhiên, việc kết nối này đòi hỏi đường truyền ổn định và bandwidth đảm bảo khi số lượng người dùng lớn.

Cách thức triển khai ownCloud với Docker

Trước tiên, bạn cần truy cập vào hub.docker.com để tìm ra image của ownCloud và xem đặc tả của image trước khi triển khai.

Ở đây, tôi sử dụng ownCloud phiên bản x.x.x để thực hiện hướng dẫn.

Nếu bạn chưa cài Docker trên server, có thể xem hướng dẫn tại đây.

Thực hiện pull image về local:

$ docker pull owncloud:latest

hoặc phiên bản ownCloud cũ hơn:

$ docker pull owncloud:10.0.4

Chuẩn bị directory cho việc deploy ownCloud:

$ mkdir owncloud-workspace

$ cd owncloud-workspace

Tạo directory chưa data của ownCloud:

$ mkdir data

$ mkdir data/data

$ mkdir data/apps

$ mkdir data/config

Tạo file shell để lưu và thực hiện chạy lệnh docker run cho ownCloud:

$ touch docker-run.sh

$ chmod +x docker-run.sh

$ vim docker-run.sh

docker run -dit --restart unless-stopped -p 80:80 -v /home/veeam/owncloud/data/apps:/var/www/html/apps -v /home/veeam/owncloud/data/config:/var/www/html/config -v /home/veeam/owncloud/data/data:/var/www/html/data --name "ownCloud" owncloud

$ ./docker-run.sh

Kiểm tra container đã được run:

$ docker ps

Truy cập vào ownCloud thông qua HTTP port 80: 

Việc sử dụng sẽ tương tự như những dịch vụ lưu trữ khác.

LEAVE A REPLY

Please enter your comment!
Please enter your name here