Cách triển khai Nền tảng mã thấp Appsmith với Docker

[ad_1]

Appsmith là một nền tảng mã thấp để lắp ráp phần mềm dòng doanh nghiệp phức tạp từ các thành phần giao diện người dùng được tạo sẵn. Nó kết nối với các nguồn dữ liệu hiện có của bạn như cơ sở dữ liệu SQL, bảng tính, API REST và điểm cuối GraphQL. Bạn có thể chuyển các kho thông tin này thành các widget phong phú bao gồm bảng, danh sách và biểu đồ.

Phiên bản Cộng đồng Appsmith là nguồn mở và có thể được tự lưu trữ hoàn toàn. Trong hướng dẫn này, chúng tôi sẽ chỉ ra cách triển khai phiên bản Appsmith của riêng bạn dưới dạng vùng chứa Docker. Đây là phương pháp được khuyến nghị giúp đơn giản hóa việc cài đặt ban đầu và bảo trì liên tục. Chúng tôi sẽ cho rằng bạn đã cài đặt Docker và Docker Compose trên hệ thống của mình.

Triển khai đầu tiên

Bạn có thể bắt đầu một máy chủ Appsmith cơ bản để thử nghiệm bằng cách sử dụng docker run một mình:

$ docker run -d --name appsmith -p 8080:80 -p 9001:9001 
    -v $PWD/appsmith-stacks:/appsmith-stacks
    appsmith/appsmith-ce

Thao tác này bắt đầu một vùng chứa mới bằng cách sử dụng appsmith/appsmith-ce hình ảnh và liên kết appsmith-stacks thư mục trong thư mục làm việc của bạn để /appsmith-stacks bên trong thùng chứa. Bạn phải luôn gắn ổ đĩa vào vị trí này để tránh mất dữ liệu sau khi cập nhật hoặc khởi động lại vùng chứa Appsmith.

Quá trình khởi tạo đầu tiên của Appsmith có thể mất một lúc để hoàn thành. Vùng chứa sẽ tạo các tệp cấu hình, tạo cơ sở dữ liệu MongoDB của bạn và kích hoạt bộ bổ sung ứng dụng ban đầu. Bạn có thể kiểm tra thời điểm phiên bản của mình sẵn sàng cho các kết nối bằng cách làm theo nhật ký vùng chứa:

$ docker logs appsmith --follow

Chờ xem một Appsmith is Running! thông báo trong đầu ra nhật ký.

Thiết lập Appsmith

Bây giờ hãy truy cập localhost:8080 trong trình duyệt của bạn. Cảng này được liên kết với cảng 80 của container trong docker run lệnh trên. Thay thế giá trị của riêng bạn nếu bạn đã thay đổi số cổng trong lệnh.

hình ảnh của trang đích Appsmith sau khi cài đặt mới

Bạn sẽ thấy trang đích của giao diện người dùng web Appsmith. Nhấp vào “Bắt đầu” và điền vào biểu mẫu để thiết lập phiên bản Appsmith của bạn. Sau đó, bạn sẽ được đưa thẳng đến một ứng dụng mới sẵn sàng kết nối với các nguồn dữ liệu của bạn.

Sử dụng Người giám sát

Hình ảnh Docker Appsmith sử dụng supervisord để chạy nhiều quy trình bên trong một vùng chứa duy nhất. Giao diện người dùng web Người giám sát được hiển thị trên cổng 9001; bên trong docker run lệnh trên, cổng máy chủ 9001 được liên kết với vùng chứa, vì vậy bạn có thể xem danh sách quy trình của vùng chứa bằng cách truy cập localhost:9001 trong trình duyệt của bạn.

hình ảnh của giao diện web giám sát viên cho Appsmith

Truy cập Người giám sát có thể giúp bạn gỡ lỗi các sự cố khi một trong các thành phần của Appsmith ngừng hoạt động. Bạn có thể khởi động lại các quy trình, xem nhật ký của chúng và tắt chúng mà không làm chết vùng chứa Docker. Mặc dù vậy, việc để Người giám sát tiếp xúc như vậy là một rủi ro bảo mật: không ràng buộc cổng 9001 với vùng chứa Appsmith sản xuất trừ khi bạn thiết lập xác thực trước.

Sử dụng Docker Compose

Bạn nên sử dụng Docker Compose để triển khai Appsmith lâu dài. Appsmith tự duy trì docker-compose.yml tự động định cấu hình vùng chứa với appsmith-stack ràng buộc mount và liên kết cổng HTTP, HTTPS và Supervisor.

Ngăn xếp Docker Compose chính thức này đi kèm với tích hợp Tháp Canh. Tháp canh sẽ tự động thay thế vùng chứa Appsmith của bạn mỗi khi hình ảnh được cập nhật, đảm bảo bạn đang sử dụng bản phát hành mới nhất hiện có.

Tải tệp Docker Compose xuống máy chủ Docker của bạn:

$ curl -L https://bit.ly/32jBNin -o $PWD/docker-compose.yml

Bây giờ, hãy sử dụng Docker Compose để hiển thị ngăn xếp Appsmith:

$ docker-compose up -d

Chờ Appsmith is Running! hiển thị trong nhật ký trước khi bạn truy cập localhost trong trình duyệt của bạn.

Viết tệp tin soạn thảo của riêng bạn

Tệp Soạn thư của Appsmith không cung cấp các biến môi trường để tùy chỉnh liên kết cổng hoặc phiên bản hình ảnh. Ngăn xếp thay thế này cho phép bạn sử dụng các cổng khác nhau và ghim vào một phiên bản cụ thể của hình ảnh Appsmith.

version: "3"

services:
  appsmith:
    image: appsmith/appsmith-ce:${IMAGE_TAG:-latest}
    ports:
      - ${HTTP_PORT:-80}:80
      - ${HTTPS_PORT:-443}:443
    volumes:
      - stacks:/appsmith_stacks
    restart: unless-stopped

volumes:
  stacks:

Bây giờ bạn có thể chạy docker-compose up -d để bắt đầu một phiên bản Appsmith cụ thể trên một cổng cụ thể.

$ IMAGE_TAG=v1.6.19 HTTP_PORT=8080 docker-compose up -d

Tệp Soạn thư này cũng sử dụng ổ đĩa Docker được đặt tên thay vì gắn kết liên kết máy chủ trực tiếp.

Cập nhật cài đặt của bạn

Bạn có thể cập nhật lên các bản phát hành Appsmith mới bằng cách kéo hình ảnh mới nhất và khởi động lại ngăn xếp của mình:

$ docker-compose pull && docker-compose up -d --force-recreate appsmith

Điều này an toàn vì tất cả dữ liệu liên tục của bạn được lưu trữ bên trong stacks âm lượng.

Bạn không cần cập nhật theo cách thủ công khi đang sử dụng tích hợp Tháp Canh được bao gồm trong tệp Soạn chính thức. Bạn có thể thêm Tháp Canh vào ngăn xếp của riêng mình bằng cách thêm nó như một dịch vụ bổ sung:

version: "3"

services:
  appsmith:
    image: appsmith/appsmith-ce:${IMAGE_TAG:-latest}
    ports:
      - ${HTTP_PORT:-80}:80
      - ${HTTPS_PORT:-443}:443
    volumes:
      - stacks:/appsmith_stacks
    labels:
      com.centurylinklabs.watchtower.enable: "true"
    restart: unless-stopped
  watchtower:
    image: containrrr/watchtower:latest
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    command: --interval 3600 --label-enable --cleanup
    restart: unless-stopped

volumes:
  stacks:

Điều này chạy Appsmith với vùng chứa Tháp canh kiểm tra các bản cập nhật hình ảnh mỗi giờ (3600 giây). Chỉ các thùng chứa có com.centurylinklabs.watchtower.enable nhãn được chọn để nó được thêm vào appsmith Dịch vụ. Tháp canh cần quyền truy cập vào ổ cắm Docker của máy chủ để có thể kéo hình ảnh mới và thay thế các vùng chứa đang chạy.

Định cấu hình phiên bản của bạn

Tệp cấu hình của Appsmith có sẵn tại /appsmith-stacks/configuration/docker.env bên trong thùng chứa. Nếu bạn đã gắn kết một thư mục cục bộ với đường dẫn này, bạn có thể chỉnh sửa tệp trên máy chủ của mình thay vì kết nối trực tiếp với vùng chứa.

# If you're bind mounting "stacks" to /appsmith-stacks
$ nano stacks/configuration/docker.env

# If you're using a Docker volume
$ docker cp appsmith:/appsmith-stacks/configuration/docker.env docker.env
$ nano docker.env
$ docker cp docker.env appsmith:/appsmith-stacks/configuration/docker.env

Tệp cấu hình thiết lập các biến môi trường sẽ được cung cấp cho cài đặt Appsmith của bạn. Các cài đặt có thể có bao gồm thông tin đăng nhập cho các nguồn dữ liệu khác nhau, khóa API để tích hợp bên thứ ba và chi tiết kết nối cho máy chủ thư và cơ sở dữ liệu MongoDB của bạn. Các giá trị bắt buộc được tự động điền trong quy trình chạy đầu tiên của Appsmith.

Để thay đổi cài đặt, trước tiên hãy cập nhật giá trị của cài đặt đó trong tệp cấu hình:

APPSMITH_MAIL_ENABLED=true
APPSMITH_MAIL_HOST=mail.example.com
APPSMITH_MAIL_PORT=465
APPSMITH_MAIL_USERNAME=appsmith
APPSMITH_MAIL_PASSWORD=$3cureP@ss
APPSMITH_MAIL_FROM=appsmith@example.com

Tiếp theo, khởi động lại vùng chứa Appsmith của bạn để áp dụng các thay đổi:

$ docker-compose restart appsmith

Appsmith sẽ tự động sử dụng cấu hình mới vào lần khởi động tiếp theo.

Xuất dữ liệu của bạn

Sau khi bắt đầu sử dụng Appsmith, bạn sẽ nhanh chóng tập hợp các ứng dụng có thể khó sao chép trong tương lai. Bạn nên thường xuyên sao lưu cài đặt của mình để đề phòng mất dữ liệu.

Hình ảnh Docker bao gồm một lệnh có thể tạo ra một kho lưu trữ hoàn chỉnh theo yêu cầu:

$ docker-compose exec appsmith appsmithctl export_db

Bản sao lưu sẽ được lưu trữ vào /appsmith-stacks/data/backup/appsmith-data.archive bên trong thùng chứa. Sử dụng docker cp để chuyển tệp lưu trữ sang máy chủ Docker của bạn:

$ docker cp appsmith:/appsmith-stacks/data/backup/appsmith-data.archive appsmith-backup-$(date +%Y-%m-%d).archive

Tiếp theo sao chép /appsmith-stacks/configuration thư mục ra khỏi vùng chứa. Bao gồm các tệp này trong bản sao lưu cuối cùng của bạn sẽ tránh phải tạo lại tệp cấu hình của bạn sau khi khôi phục sao lưu. Giờ đây, bạn có thể tải bản sao lưu của mình lên bộ nhớ đám mây hoặc máy chủ chuyên dụng để bảo vệ dữ liệu của mình nếu máy chủ Docker của bạn gặp sự cố.

Để khôi phục kho lưu trữ sao lưu trong tương lai, hãy sao chép nó vào /appsmith-stacks/data/restore trong vùng chứa Appsmith mới và chạy import_db yêu cầu:

$ docker cp appsmith-backup-2022-04-13.archive appsmith:/appsmith-stacks/data/restore
$ docker-compose exec appsmith appsmithctl import_db

Khởi động lại Appsmith để hoàn tất quá trình khôi phục:

$ docker-compose restart appsmith

Sử dụng Appsmith

Ứng dụng Appsmith có bốn thành phần cơ bản:

  • Các trang – Các màn hình trong ứng dụng của bạn.
  • Vật dụng – Các thành phần giao diện người dùng trên các màn hình đó.
  • Truy vấn / JavaScript – Đoạn mã JavaScript tùy chỉnh bổ sung chức năng nâng cao.
  • Nguồn dữ liệu – Kết nối với cơ sở dữ liệu bên ngoài của bạn.

hình ảnh của một ứng dụng Appsmith trống

Bắt đầu một ứng dụng mới bằng cách nhấp vào nút “Thêm nguồn dữ liệu” trên trang đích của ứng dụng đó. Bạn có thể nhanh chóng tạo ra một ứng dụng mẫu bằng cách sử dụng một trong các cơ sở dữ liệu mẫu được tích hợp sẵn. Nhấp vào tùy chọn “người dùng” để thêm cơ sở dữ liệu PostgreSQL được điền với một số dữ liệu người dùng.

hình ảnh tạo nguồn dữ liệu trong Appsmith

Tiếp theo, nhấp vào nút “Truy vấn mới” để thêm truy vấn hiển thị thông tin từ kho dữ liệu.

hình ảnh tạo nguồn dữ liệu trong Appsmith

hình ảnh tạo nguồn dữ liệu trong Appsmith

Quay lại trang ứng dụng của bạn bằng cách nhấp vào “Trang 1” ở thanh bên trái. Nhấn “Thêm tiện ích” và kéo một trong các tiện ích từ thanh bên vào canvas. Chúng tôi đang sử dụng một Danh sách.

hình ảnh của một trang trống với một "Thêm tiện ích con" nút trong Appsmith

Trong ngăn thuộc tính ở bên phải, xóa dữ liệu mẫu và thay thế bằng {{Query1.data}}. Điều này thực hiện truy vấn được tạo trước đó để hiển thị dữ liệu từ cơ sở dữ liệu người dùng. Bản xem trước trực tiếp sẽ cập nhật và hiển thị danh sách người dùng.

hình ảnh định cấu hình tiện ích Appsmith để hoạt động với nguồn dữ liệu

Bạn có thể tiếp tục thêm các tiện ích con để phát triển các khả năng của ứng dụng. Sau khi bạn hoàn tất, hãy nhấp vào nút “Triển khai” ở trên cùng bên phải để xuất bản ứng dụng của bạn và khởi chạy nó ở chế độ xem của Appsmith.

hình ảnh của một ứng dụng Appsmith hiển thị danh sách người dùng mặc định ở chế độ xem

Bản tóm tắt

Appsmith là một nền tảng mã nguồn mở thấp để phát triển nhanh chóng các ứng dụng kinh doanh mới. Hình ảnh Docker chính thức cho phép bạn nhanh chóng bắt đầu phiên bản Appsmith của riêng mình với cấu hình tối thiểu.

Khi vùng chứa của bạn hoạt động, bạn có thể sử dụng bộ trình kết nối đi kèm để truy vấn, chỉnh sửa và trực quan hóa kho dữ liệu của tổ chức bạn. Sau đó, bạn có thể chia sẻ ứng dụng của mình với các thành viên khác trong nhóm hoặc cho phép truy cập công khai để các nhà thầu, nhà cung cấp và khách hàng bên ngoài có thể tham gia.

Phiên bản Dockerized Appsmith sẽ ít yêu cầu bảo trì dài hạn ngoài các bản sao lưu và cập nhật thường xuyên. Sử dụng Docker để triển khai cũng giúp dễ dàng xóa Appsmith khỏi hệ thống của bạn nếu bạn quyết định nó không dành cho bạn. Chạy docker-compose down --volumes để chia nhỏ hoàn toàn ngăn xếp của bạn, bao gồm cả dữ liệu được lưu trữ bên trong appsmith-stacks âm lượng.



[ad_2]

Chat Zalo
0903064855