Trên DSM, bên cạnh việc quản lý Docker bằng ứng dụng Container Manager, chúng ta còn có thể sử dụng giao diện dòng lệnh (CLI). Dưới đây là cách quản lý Docker trên DSM sử dụng giao diện dòng lệnh Command Line Interface (CLI).
1. Kích hoạt tính năng SSH
DSM có sẵn SSH Server nhưng bị mặc định bị tính. Mình cần phải vào Control Panel –> Terminal & SNMP, sau đó bấm chọn vào mục Enable SSH service. Nhấn Apply.
Sau đó, sử dụng Terminal để SSH vào Synology / Xpenology sử dụng cùng tài khoản / mật khẩu dùng để đăng nhập vào giao diện web.
2. Phân quyền quản lý Docker cho tài khoản
Tài khoản admin mặc định sẽ không có quyền truy xuất vào Docker. Mỗi lần gõ lệnh bắt buộc phải đi gõ kèm sudo
. Còn nếu thiếu sudo
thì sẽ bị báo lỗi permission denied tương tự như dưới đây.
sh-4.4$ docker info
Client:
Context: default
Debug Mode: false
Server:
ERROR: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/info": dial unix /var/run/docker.sock: connect: permission denied
errors pretty printing info
Code language: YAML (yaml)
Để phân quyền quản lý Docker cho tài khoản admin, sử dụng các lệnh sau.
Tạo group docker
sudo synogroup --add docker
Code language: Dockerfile (dockerfile)
Thêm tài khoản đang đăng nhập vào group docker vừa tạo
sudo synogroup --member docker $USER
Code language: Nginx (nginx)
Phân quyền quản lý Docker cho group docker.
sudo chown root:docker /var/run/docker.sock
Code language: Dockerfile (dockerfile)
Thoát khỏi SSH và đăng nhập lại, giờ bạn đã có thể gõ các lệnh docker mà không cần phải kèm thêm sudo
.
Lưu ý khi dùng Docker Compose bằng dòng lệnh trên DSM, bạn phải dùng lệnh docker-compose
, không dùng docker compose
được vì phiên bản Docker trên DSM chưa tích hợp compose vào Docker CLI.
Tham khảo: https://davejansen.com/manage-docker-without-needing-sudo-on-your-synology-nas/
Nhớ chia sẻ bài viết cho bạn bè nếu các bạn thấy bài viết này hữu ích cho mọi người nhé!
Nguồn : thuanbui.me