Bookmark

Chạy Seafile bằng Docker

Seafile là nền tảng đồng bộ và chia sẻ file mã nguồn mở. Bài này dùng hai container MariaDB và Seafile trên cùng network, lưu dữ liệu lần lượt ở ~/docker/mariadb~/docker/seafile.

Youtube video player

Cài Docker

Đăng nhập Linux bằng tài khoản có sudo, sau đó chạy:

1
2
3
4
5
6
7
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y
curl -fsSL https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release)/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release) $(lsb_release -cs) stable"
sudo apt install docker-ce docker-compose containerd.io -y
sudo systemctl enable docker && sudo systemctl start docker
sudo usermod -aG docker $USER
su - $USER

Với distro mới, hãy xem thêm Docker docsapt-key đã deprecated.

Chạy MariaDB và Seafile

  1. Tạo thư mục và network:
1
2
3
mkdir ~/docker/mariadb -p && mkdir ~/docker/seafile
sudo chown "$USER":"$USER" ~/docker -R
docker network create containers
  1. Chạy MariaDB. Đổi [DB_ROOT_PASSWORD] thành secret riêng:
1
2
3
4
docker run -d --name mariadb --network containers \
  -e MYSQL_ROOT_PASSWORD='[DB_ROOT_PASSWORD]' \
  -v ~/docker/mariadb:/var/lib/mysql \
  --restart=unless-stopped mariadb:latest
  1. Chạy Seafile và trỏ database tới container mariadb:
1
2
3
4
5
6
docker run -d --name seafile --network containers -p 8080:80 \
  -e DB_HOST=mariadb \
  -e DB_ROOT_PASSWD='[DB_ROOT_PASSWORD]' \
  -e TIME_ZONE=Asia/Ho_Chi_Minh \
  -v ~/docker/seafile:/shared \
  --restart=unless-stopped seafileltd/seafile-mc:11.0-latest

Thiết lập Seafile

  1. Mở http://DNSorIP:8080 và chờ lần khởi tạo đầu tiên.
  2. Đăng nhập bằng tài khoản quản trị do image tạo hoặc thông tin bạn đã cấu hình; không dùng credential mẫu của nguồn.
  3. Bấm biểu tượng profile góc phải > System Admin > Users.
  4. Bấm Add User, nhập email và mật khẩu riêng, rồi Submit.
  5. Mở tab Admin, bấm Add Admin, chọn user mới và Submit.
  6. Logout, đăng nhập lại bằng user mới, rồi vào System Admin > Users.
  7. Chọn user mẫu me@example.com nếu nó tồn tại, bấm Delete Users.
  8. Kiểm tra upload, download, tạo thư viện và quyền chia sẻ.

Cảnh báo: Seafile cần backup cả ~/docker/seafile và database trước khi nâng cấp image. Không mở MariaDB ra Internet; nên đặt Seafile sau HTTPS reverse proxy khi dùng ngoài LAN.

Nguồn và video


0 Bình luận

Góp Ý / Bình Luận / Đánh giá