Docker nodejs kết nối với mysql
Chúng tôi đang kết nối với cơ sở dữ liệu MYSQL có tên là kiểm tra và trong tuyến / GET, chúng tôi đang hiển thị tất cả nội dung được lưu trữ trong bảng Sinh viên Show Bây giờ, chúng ta cần cập bến chương trình phụ trợ của mình. FROM node:15-alpineWORKDIR /app COPY package*.json ./ RUN npm install COPY . . EXPOSE 5000 CMD ["npm", "start"]
Chúng ta đã tạo phụ trợ nodejs và Dockerfile. mkdir db && cd db
Viết phần sau vào testdump. sql — CREATE TABLE Student( Ở đây chúng tôi đã tạo một bảng Sinh viên và chèn 2 mục
Bây giờ hãy tạo Dockerfile cho hình ảnh MYSQL FROM mysql EXPOSE 3306 COPY ./testdump.sql /docker-entrypoint-initdb.d/ Chúng tôi đã sử dụng MYSQL mới nhất làm hình ảnh gốc, hiển thị cổng mặc định (3306) và sao chép kết xuất thử nghiệm. sql sang docker-entrypoint-initdb. d (tất cả tập lệnh sql bên trong thư mục này sẽ thực thi khi vùng chứa khởi động) Tạo tập tin docker-composeChúng ta đang gần hoàn tất. Chúng ta có thể xây dựng và chạy riêng cả hai docker container, nhưng cách hiệu quả là tạo một docker-compose. yaml (mô tả tất cả các cấu hình) để khởi động toàn bộ ứng dụng của chúng tôi bằng một lệnh duy nhất Chúng tôi sẽ khởi tạo cơ sở dữ liệu thử nghiệm của mình bằng một lược đồ mẫu. Tải xuống kết xuất thử nghiệm. sql và đặt nó trong thư mục mysql-microservice cùng với Dockerfile Tạo một thư mục dữ liệu nơi mysql sẽ lưu trữ nội dung của nó docker run -dp 5000:5000 varsubham/sample_node 0. Chúng tôi sẽ chỉ định thư mục này trong khi chạy bộ chứa mysql của chúng tôi. Trên thư mục lưu trữ mặc định của Linux là 0 nhưng trong hướng dẫn này, chúng tôi sẽ sử dụng thư mục lưu trữ tùy chỉnhXây dựng hình ảnh với Dockerfile 1 Lưu ý rằng chúng ta đang ở trong thư mục mysql-microservice. 2 sẽ là tên của hình ảnh của chúng tôiBạn có thể kiểm tra hình ảnh mới được tạo của mình bằng cách sử dụng 3Chạy hình ảnh docker mới được tạo dưới dạng vùng chứa
Với lệnh trên, chúng tôi đã khởi động vùng chứa của mình ở chế độ tách rời 4 và cổng máy chủ (máy của bạn) được ánh xạ 6603 với cổng vùng chứa 3306 (máy chủ mysql) 5. Chúng tôi cũng đang sử dụng thư mục lưu trữ dữ liệu tùy chỉnh của mình bằng cách chỉ định dung lượng đường dẫn máy chủ 6. Thay thế đường dẫn 7 thành đường dẫn tuyệt đối của thư mục dữ liệu mà bạn đã tạo trên hệ thống của mình. Chúng tôi cũng đang đặt tên vùng chứa của mình là test-mysql-microservice 8Kiểm tra nhật ký để xem mọi thứ có suôn sẻ không 9Kiểm tra trạng thái vùng chứa của bạn mkdir db && cd db 80Chúng tôi đã khởi chạy thành công vùng chứa mysql Kết nối với bộ chứa mysql mới được khởi chạy từ máy chủ (tùy chọn)Để xác minh rằng bộ chứa test-mysql-microservice của chúng tôi đã hoạt động, chúng tôi sẽ kết nối với nó. Thực hiện theo các bước bên dưới nếu bạn đã cài đặt mysql (mysql-client) trên hệ thống của mình
Khởi chạy ứng dụng nodejs trong vùng chứa
Thử nghiệm ứng dụng hoàn chỉnh của chúng tôiNếu mọi thứ vẫn ổn thì xin chúc mừng😄Bạn có một ứng dụng hoàn chỉnh chạy với hai vi dịch vụ. Để kiểm tra điều này, bạn có thể sử dụng lệnh CURL từ máy chủ của mình
|