Nghia Phan 28 tháng 8, 2026
Update:
29 tháng 8, 2026
Easy!Appointments là ứng dụng web mã nguồn mở cho phép khách đặt lịch và có thể đồng bộ với Google Calendar. Bài này dùng mạng Docker riêng và lưu database trong ~/docker/mariadb.
Cài Docker Đăng nhập Linux bằng tài khoản có quyền sudo, rồi chạy các lệnh sau. Tutorial gốc dùng apt-key; trên bản phân phối mới, hãy đối chiếu thêm
tài liệu Docker chính thức
vì lệnh này đã bị đánh dấu deprecated.
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
Tạo database và container ứng dụng Tạo thư mục và cấp quyền cho user hiện tại: 1
2
mkdir ~/docker/mariadb -p
sudo chown " $USER " :" $USER " ~/docker -R
Tạo network dùng chung: 1
docker network create containers
Chạy MariaDB. Thay cả hai giá trị [DB_PASSWORD] bằng mật khẩu riêng; không dùng mật khẩu trong tutorial gốc: 1
2
3
4
5
6
7
8
docker run -d --name mariadb \
--network containers --network-alias db \
-e MYSQL_ROOT_PASSWORD = '[DB_ROOT_PASSWORD]' \
-e MYSQL_USER = easy_appointments_rw \
-e MYSQL_PASSWORD = '[DB_PASSWORD]' \
-e MYSQL_DATABASE = easy_appointments \
-v /home/$USER /docker/mariadb:/var/lib/mysql \
--restart= unless-stopped mariadb:latest
Chạy Easy!Appointments và trỏ nó vào MariaDB: 1
2
3
4
5
6
7
8
docker run -d --name easy-appointments \
--network containers -p 8089:80 \
-e DB_HOST = mariadb \
-e DB_NAME = easy_appointments \
-e DB_USERNAME = easy_appointments_rw \
-e DB_PASSWORD = '[DB_PASSWORD]' \
--restart= unless-stopped \
alextselegidis/easyappointments
Hoàn tất trên web installer Mở http://DNSorIP:8089. Chờ màn hình cài đặt Easy!Appointments xuất hiện. Điền thông tin Administrator và Company, rồi bấm Install Easy!Appointments . Sau khi vào được giao diện, kiểm tra container bằng docker ps và xem log nếu trang chưa tải. 1
2
docker ps
docker logs --tail= 50 easy-appointments
Sao lưu thư mục ~/docker/mariadb trước khi nâng cấp image. Không đưa database port ra Internet nếu không cần.
Nguồn và video
Góp Ý / Bình Luận / Đánh giá