Docker-soạn ví dụ MongoDB

Docker là một nền tảng phát triển mạnh mẽ cho phép người dùng chứa phần mềm. Các thùng chứa này có thể chạy trên bất kỳ máy nào, cũng như trong đám mây công cộng hoặc riêng tư. Nhờ thời gian chạy nhẹ của Docker và khả năng chạy các quy trình một cách cô lập, nhiều vùng chứa có thể chạy cùng lúc trên cùng một máy ảo hoặc máy chủ

MongoDB là một dịch vụ cơ sở dữ liệu NoSQL với hiệu suất liền mạch và các tùy chọn để mở rộng quy mô. Nó sử dụng mô hình lưu trữ giống như JSON và không yêu cầu lược đồ cơ sở dữ liệu được xác định trước. Trong thế giới thực, nhiều dữ liệu không có cấu trúc—nó không tuân theo một lược đồ cụ thể. Cơ sở dữ liệu NoQuery rất hữu ích để lưu trữ dữ liệu đó. Bạn chỉ cần nhập dữ liệu và các trường mới sẽ được tạo. Bạn cũng có thể để trống các trường trong trường hợp thiếu nhiều dữ liệu

MongoDB có thể chạy trong Docker container. Có một hình ảnh chính thức có sẵn trên Docker Hub chứa phiên bản cộng đồng MongoDB, được sử dụng trong môi trường phát triển. Đối với sản xuất, bạn có thể tùy chỉnh tạo vùng chứa bằng phiên bản doanh nghiệp của MongoDB

Nếu bạn muốn sử dụng cơ sở dữ liệu MongoDB của mình trên một số máy, sử dụng bộ chứa Docker để lưu trữ MongoDB là một cách tiếp cận tuyệt vời – bạn có thể dễ dàng tạo các phiên bản biệt lập mới. Hơn nữa, trong quá trình phát triển, việc khởi động phiên bản Docker sẽ dễ dàng hơn là định cấu hình máy chủ theo cách thủ công. Nếu bạn đang phát triển nhiều ứng dụng, bạn có thể bắt đầu nhiều vùng chứa cùng nhau bằng tệp

docker run -d -p 27017:27017 --name test-mongo mongo:latest
2

Trong bài viết này, bạn sẽ tìm hiểu các phương pháp hay nhất để chạy bộ chứa MongoDB. Bạn cũng sẽ tìm hiểu cách lưu trữ ứng dụng Flask đơn giản và cách sử dụng khối lượng Docker để duy trì dữ liệu trong vùng chứa Docker

Thành phần Docker

Trước khi đi sâu vào chi tiết triển khai, hãy dành chút thời gian để giới thiệu một số khái niệm cơ bản của Docker. Tóm lại, bộ chứa Docker là các phần mềm độc lập đóng gói mọi thứ cần thiết để chạy một số mã, tệp, phần phụ thuộc, cấu hình, v.v.

Docker daemon,

docker run -d -p 27017:27017 --name test-mongo mongo:latest
3, quản lý các Docker container và xử lý các yêu cầu thông qua Docker Engine API

Triển khai MongoDB trong Docker

Bây giờ, điều đầu tiên bạn muốn làm để thiết lập triển khai MongoDB là cài đặt Docker, việc này có thể được thực hiện trực tiếp từ thiết bị đầu cuối của bạn. Tuy nhiên, nên sử dụng Docker Desktop để có trải nghiệm liền mạch

Chạy MongoDB trong Docker Container

Để phát triển, tốt hơn là kết nối với một phiên bản MongoDB chạy bên trong bộ chứa Docker cục bộ (thay vì phiên bản được lưu trữ trên đám mây) để tiết kiệm tài nguyên. Bạn có thể kéo hình ảnh MongoDB mới nhất và chạy nó trong bộ chứa Docker. Để sản xuất, ứng dụng có thể kết nối với cơ sở dữ liệu được lưu trữ trên đám mây bằng MongoDB Atlas hoặc MongoDB Enterprise Server

Trong quá trình phát triển, bạn sẽ sử dụng Docker để lưu trữ cục bộ phiên bản MongoDB. Bắt đầu bằng cách kéo hình ảnh cho phiên bản MongoDB mà bạn muốn bằng cách chỉ định thẻ phù hợp

$ docker pull mongo:4.0.4

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete

Bạn có thể khởi động máy chủ MongoDB chạy phiên bản MongoDB mới nhất bằng Docker bằng lệnh sau

docker run -d -p 27017:27017 --name test-mongo mongo:latest

Điều này sẽ lấy hình ảnh chính thức mới nhất từ ​​​​Docker Hub. Việc thêm cờ

docker run -d -p 27017:27017 --name test-mongo mongo:latest
4 sẽ đảm bảo rằng bộ chứa Docker chạy dưới dạng quy trình nền, tách biệt với trình bao. Thẻ
docker run -d -p 27017:27017 --name test-mongo mongo:latest
5 biểu thị cổng mà cổng container bị ràng buộc trở lại 27017. Bạn có thể kết nối với MongoDB trên
docker run -d -p 27017:27017 --name test-mongo mongo:latest
6

Để thay đổi số cổng, bạn có thể thay đổi đối số cờ

docker run -d -p 27017:27017 --name test-mongo mongo:latest
5 thành
docker run -d -p 27017:27017 --name test-mongo mongo:latest
8 để sử dụng
docker run -d -p 27017:27017 --name test-mongo mongo:latest
9. Bạn cũng có thể sử dụng cờ
docker run -d -p 27017:27017 --name test-mongo mongo:latest
10 để đề cập đến bài đăng. Sử dụng hình ảnh mới nhất giúp bạn tránh được các lỗi phiên bản. Thực hiện điều này để chạy MongoDB trên
docker run -d -p 27017:27017 --name test-mongo mongo:latest
11

docker run -d -p 27017:27017 --name test-mongo mongo:latest
1

Hoặc chọn cổng của riêng bạn

docker run -d -p 27017:27017 --name test-mongo mongo:latest
4

Ngoài ra, nếu bạn kéo hình ảnh chỉ định thẻ phiên bản, hãy chạy bộ chứa Docker bằng lệnh này

docker run -d -p 27017:27017 --name test-mongo mongo:latest
5

Sau đó sử dụng lệnh sau để mở trình bao MongoDB. Tôi đã sử dụng

docker run -d -p 27017:27017 --name test-mongo mongo:latest
12 làm tên vùng chứa tùy ý, mặc dù bạn có thể thay thế
docker run -d -p 27017:27017 --name test-mongo mongo:latest
12 bằng
docker run -d -p 27017:27017 --name test-mongo mongo:latest
14 hoặc bất kỳ tên vùng chứa nào khác mà bạn chọn

docker run -d -p 27017:27017 --name test-mongo mongo:latest
9

Shell MongoDB tương tác của bạn sẽ trông như thế này

Docker-soạn ví dụ MongoDB
Vỏ MongoDB tương tác cho vùng chứa

Lệnh

docker run -d -p 27017:27017 --name test-mongo mongo:latest
15 sẽ hiển thị tất cả cơ sở dữ liệu hiện có của bạn. Tại đây, bạn có cơ sở dữ liệu quản trị, cấu hình và cục bộ, ban đầu trống. Để biết chi tiết về các chức năng khác nhau có sẵn từ trình bao, hãy nhập “trợ giúp”. Điều này sẽ cung cấp danh sách một số phương pháp cơ sở dữ liệu có sẵn, bao gồm các lệnh để hiển thị các bộ sưu tập và thông tin của cơ sở dữ liệu

Docker-soạn ví dụ MongoDB
Lệnh MongoDb

Bạn có thể tương tác với phiên bản MongoDB được lưu trữ cục bộ của mình thông qua trình bao này trực tiếp từ thiết bị đầu cuối của bạn. Bạn cũng có thể mở CLI vùng chứa bằng các nút trên Docker Desktop

Docker-soạn ví dụ MongoDB
máy tính để bàn docker. chạy container

Để kiểm tra nhật ký vùng chứa của bạn, bạn có thể sử dụng lệnh

docker run -d -p 27017:27017 --name test-mongo mongo:latest
16 theo sau là tên vùng chứa của bạn

$ docker pull mongo:4.0.4
2

Docker-soạn ví dụ MongoDB
Đầu ra nhật ký docker cho vùng chứa

Bạn cũng có thể kiểm tra nhật ký của MongoDB bằng lệnh

docker run -d -p 27017:27017 --name test-mongo mongo:latest
16

$ docker pull mongo:4.0.4
4

Bằng cách sử dụng cờ

docker run -d -p 27017:27017 --name test-mongo mongo:latest
18, nhật ký vùng chứa sẽ được cập nhật trên thiết bị đầu cuối của bạn theo thời gian thực

Kết nối từ một vùng chứa khác

Khi máy chủ MongoDB đang chạy trên Docker, bạn cũng có thể chạy ứng dụng Flask trong Docker. Có một Dockerfile trong kho lưu trữ chứa một bộ lệnh để xây dựng hình ảnh Docker và chạy nó. Trong trường hợp này, kết nối cả hai vùng chứa với mạng Docker được chia sẻ là một ý tưởng hay. Điều này sẽ đảm bảo tính bảo mật, vì bạn sẽ không cần xuất bản các cổng MongoDB lên máy chủ. Để tạo một mạng và kết nối bộ chứa MongoDB với nó, hãy sử dụng các lệnh sau

$ docker pull mongo:4.0.4
6

Vùng chứa khách hàng của bạn cũng nên tham gia vào

docker run -d -p 27017:27017 --name test-mongo mongo:latest
19. Vùng chứa của bạn sẽ có thể tham chiếu vùng chứa MongoDB bằng cách sử dụng URL
docker run -d -p 27017:27017 --name test-mongo mongo:latest
40

Dữ liệu liên tục với khối lượng

Khi chạy MongoDB trong Docker, một trong những thách thức chính là lưu trữ. Thông thường, người dùng muốn có thể duy trì dữ liệu có chọn lọc cho vùng chứa. Một phương pháp hay là sử dụng các ổ đĩa để đảm bảo dữ liệu vẫn tồn tại ngay cả sau khi vùng chứa bị dừng hoặc trình nền Docker được khởi động lại. Theo mặc định, hình ảnh MongoDB lưu trữ dữ liệu của nó trong thư mục

docker run -d -p 27017:27017 --name test-mongo mongo:latest
41. Bạn có thể gắn ổ đĩa vào vị trí này để kích hoạt tính bền bỉ của dữ liệu. Sử dụng lệnh này để tạo vùng chứa
docker run -d -p 27017:27017 --name test-mongo mongo:latest
14 với khối lượng Docker có tên
docker run -d -p 27017:27017 --name test-mongo mongo:latest
43 được gắn trên đó

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete
0

Nếu bạn muốn kiểm tra khối lượng của mình, bạn có thể thực hiện bằng lệnh

docker run -d -p 27017:27017 --name test-mongo mongo:latest
44

Bạn có thể kiểm tra tất cả các ổ đĩa hiện có để hiển thị ổ đĩa nào được đính kèm với vùng chứa nào bằng cách sử dụng

docker run -d -p 27017:27017 --name test-mongo mongo:latest
45

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete
1

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete
2

Định cấu hình máy chủ của bạn

Nếu bạn muốn thay đổi cấu hình MongoDB mặc định, bạn có thể sử dụng cờ

docker run -d -p 27017:27017 --name test-mongo mongo:latest
46 để chuyển vị trí tới tệp văn bản có cấu hình. File cấu hình theo định dạng YAML. Đây là lệnh để chỉ định một vị trí cấu hình nhất định

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete
3

Bảo vệ

Bạn cũng có thể thêm xác thực vào bộ chứa MongoDB của mình để đảm bảo an toàn dữ liệu. Điều này sẽ vô hiệu hóa nhân viên trái phép kết nối với máy chủ của bạn

Thêm tài khoản người dùng của bạn bằng cách đặt tên người dùng và mật khẩu bằng các biến môi trường trong quá trình tạo vùng chứa. Sử dụng cờ

docker run -d -p 27017:27017 --name test-mongo mongo:latest
47 để chỉ định các biến môi trường
docker run -d -p 27017:27017 --name test-mongo mongo:latest
48 và
docker run -d -p 27017:27017 --name test-mongo mongo:latest
49

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete
4

Do đó, cơ sở dữ liệu sẽ được bắt đầu với tài khoản người dùng

docker run -d -p 27017:27017 --name test-mongo mongo:latest
50. Người dùng mới này sẽ được cấp quyền root. Vì người dùng root sẽ có quyền kiểm soát truy cập mọi thứ, điều quan trọng là phải cung cấp một mật khẩu an toàn. Trong trường hợp này, bạn có thể chuyển vị trí tệp bí mật làm đầu vào cho biến môi trường
docker run -d -p 27017:27017 --name test-mongo mongo:latest
51. Mật khẩu của bạn sẽ không hiển thị khi sử dụng
docker run -d -p 27017:27017 --name test-mongo mongo:latest
52 để xem các biến môi trường vùng chứa. Để chạy MongoDB với Docker bằng tên người dùng và mật khẩu của bạn, hãy sử dụng mã bên dưới

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete
5

Ứng dụng Flask để quản lý cơ sở dữ liệu sinh viên

Trong phần này, bạn sẽ tạo một ứng dụng lưu trữ đơn giản, nơi MongoDB sẽ lưu trữ các bản ghi điểm của sinh viên. Để bắt đầu, bạn sẽ muốn mở Docker Desktop và xóa các vùng chứa mà bạn vừa tạo, vì bây giờ bạn sẽ tạo thêm một vài vùng chứa nữa. Sau đó, trong ứng dụng web Flask, bạn sẽ thêm chức năng sau

  • Thêm một bản ghi mới vào cơ sở dữ liệu
  • Chỉnh sửa bản ghi
  • Xem danh sách tất cả các bản ghi

Điều này sẽ giúp đảm bảo rằng cơ sở dữ liệu đang hoạt động như mong đợi. Bắt đầu bằng cách sao chép kho lưu trữ GitHub này

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete
6

Kho lưu trữ này bao gồm bốn phần chính

  • docker run -d -p 27017:27017 --name test-mongo mongo:latest
    53. Các mẫu trang HTML cho các trang khác nhau
  • docker run -d -p 27017:27017 --name test-mongo mongo:latest
    54. Các tệp CSS cho mỗi trang HTML
  • docker run -d -p 27017:27017 --name test-mongo mongo:latest
    55. Các điểm cuối của ứng dụng Flask được xác định tại đây, cùng với các chức năng
  • docker run -d -p 27017:27017 --name test-mongo mongo:latest
    56. Danh sách phụ thuộc

Để truy cập máy chủ từ ứng dụng Flask được lưu trữ cục bộ của bạn, bạn sẽ cần xuất một cổng bằng cờ

docker run -d -p 27017:27017 --name test-mongo mongo:latest
5

docker run -d -p 27017:27017 --name test-mongo mongo:latest

Phiên bản MongoDB của bạn sẽ có thể truy cập được vào ngày

docker run -d -p 27017:27017 --name test-mongo mongo:latest
58. Để trực quan hóa và phân tích nó bằng GUI, bạn có thể sử dụng MongoDB Compass

Để chạy ứng dụng Flask, trước tiên bạn cần cài đặt Python—bất kỳ phiên bản Python3 nào cũng được

Tiếp theo, cài đặt các phụ thuộc bằng cách chạy đoạn mã sau trong thiết bị đầu cuối của bạn

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete
8

Để dễ phát triển, bạn sẽ chạy ứng dụng Python bên ngoài vùng chứa và chạy Mongo bên trong một. Hãy tiếp tục và chạy ứng dụng Python Flask với

docker run -d -p 27017:27017 --name test-mongo mongo:latest
59 ngay bây giờ

Docker-soạn ví dụ MongoDB
Chạy ứng dụng Flask

Sử dụng giao diện Flask, bạn có thể thêm, cập nhật và xem các bản ghi. Để bắt đầu, hãy truy cập

docker run -d -p 27017:27017 --name test-mongo mongo:latest
90

Docker-soạn ví dụ MongoDB
Cơ sở dữ liệu điểm học sinh

Điền vào một bản ghi mới và nhấp vào Gửi điểm. Trang này sẽ xác nhận trình của bạn

Docker-soạn ví dụ MongoDB
Bài nộp mới được chấp nhận cho sinh viên

Tiếp theo, quay lại trang chủ và nhấp vào Nhận điểm của tất cả học sinh. Trang này sẽ hiển thị tất cả hồ sơ học sinh của bạn

Docker-soạn ví dụ MongoDB
Danh sách học sinh và điểm

Thêm một vài mục khác và đảm bảo rằng ứng dụng đang hoạt động như mong đợi. Bạn cũng có thể chỉnh sửa bài nộp cho một học sinh nhất định. Sau khi thêm một vài bản ghi, cơ sở dữ liệu của bạn có thể trông như thế này

Docker-soạn ví dụ MongoDB
Danh sách học sinh và điểm

Đối với vùng chứa này, bạn đã không đính kèm một ổ đĩa. Vì vậy, khi bạn tạo một vùng chứa mới từ cùng một hình ảnh MongoDB, nó sẽ bắt đầu với một cơ sở dữ liệu trống. Truy cập Docker Desktop và dừng container đang chạy

docker run -d -p 27017:27017 --name test-mongo mongo:latest
14. Bạn cũng có thể sử dụng
docker run -d -p 27017:27017 --name test-mongo mongo:latest
92 để dừng container khỏi bến. Để xem danh sách các container đang chạy và thông tin chi tiết của chúng, hãy sử dụng
docker run -d -p 27017:27017 --name test-mongo mongo:latest
93. Sau đó, tạo một vùng chứa khác cho MongoDB từ thiết bị đầu cuối

4.0.4: Pulling from library/mongo
7b8b6451c85f: Downloading 36.19MB/43.41MB
ab4d1096d9ba: Download complete
e6797d1788ac: Download complete
e25c5c290bde: Download complete
45aala4d5e06: Download complete
b7e29f184242: Download complete
ad78e42605af: Download complete
1f4ac0b92a65: Download complete
55880275f9fb: Download complete
bd0396c9dcef: Download complete
28bf9db38c03: Downloading 8.608MB/87.07MB
3e954d14ae9b: Download complete
cd245aa9c426: Download complete
9

Bây giờ, hãy truy cập

docker run -d -p 27017:27017 --name test-mongo mongo:latest
90 và nhấp vào Nhận điểm của tất cả học sinh

Docker-soạn ví dụ MongoDB
Danh sách trống của tất cả các sinh viên

Lần này, bạn sẽ thấy rằng tất cả dữ liệu trước đó đã bị mất và thay vào đó, bạn đang bắt đầu với một cơ sở dữ liệu trống. Đây là nơi khối lượng có ích

Dừng container

docker run -d -p 27017:27017 --name test-mongo mongo:latest
95. Tạo một thùng chứa có tên là
docker run -d -p 27017:27017 --name test-mongo mongo:latest
96 và đính kèm một ổ đĩa vào đó. Mọi dữ liệu được tạo trong vòng đời của vùng chứa đó sẽ bị hủy sau khi vùng chứa bị xóa. Tuy nhiên, bạn muốn duy trì dữ liệu trên máy cục bộ của mình, vì vậy hãy tiếp tục và gắn ổ đĩa bằng cách sử dụng đối số
docker run -d -p 27017:27017 --name test-mongo mongo:latest
97

docker run -d -p 27017:27017 --name test-mongo mongo:latest
0

Sau đó, truy cập

docker run -d -p 27017:27017 --name test-mongo mongo:latest
90 và thêm một số bản ghi mới vào cơ sở dữ liệu sinh viên

Docker-soạn ví dụ MongoDB
Cơ sở dữ liệu hồ sơ học sinh (Tania, Sam và Beth)

Khi bạn dừng vùng chứa này và tạo một vùng chứa mới, bạn sẽ cho phép vùng chứa mới sử dụng dung lượng của vùng chứa trước đó. Dừng vùng chứa này và tạo một vùng chứa mới có thẻ

docker run -d -p 27017:27017 --name test-mongo mongo:latest
99 theo sau là tên của vùng chứa có âm lượng bạn muốn gắn vào vùng chứa này—trong trường hợp này là
docker run -d -p 27017:27017 --name test-mongo mongo:latest
96

docker run -d -p 27017:27017 --name test-mongo mongo:latest
1

Bây giờ, khi bạn truy cập vào

docker run -d -p 27017:27017 --name test-mongo mongo:latest
90, bạn sẽ nhận thấy rằng tất cả dữ liệu bạn đã thêm trước đó vẫn còn nguyên vẹn, do Docker đã đính kèm âm lượng sau khi bắt đầu. Các ổ vẫn tồn tại cho đến khi bạn xóa chúng bằng lệnh
$ docker pull mongo:4.0.4
22 hoặc bằng cách sử dụng cờ
$ docker pull mongo:4.0.4
23 khi hủy một thùng chứa bằng
$ docker pull mongo:4.0.4
24

Nếu ứng dụng của bạn đang chạy bên trong một vùng chứa, bạn có thể chạy MongoDB như một phần của cùng mạng Docker như ứng dụng của bạn bằng cách sử dụng

$ docker pull mongo:4.0.4
25. Với phương pháp này, bạn sẽ kết nối với MongoDB trên
$ docker pull mongo:4.0.4
26 từ các ứng dụng được đóng gói khác trong mạng

Phần kết luận

Trong bài viết này, bạn đã lưu trữ máy chủ MongoDB của mình bằng Docker. Bạn đã tạo một ứng dụng Flask để kiểm tra xem máy chủ có hoạt động như mong đợi hay không và bạn đã học cách đính kèm ổ đĩa vào vùng chứa của mình để xem cách các vùng chứa hoạt động khi có và không có chúng

Có rất nhiều lợi ích khi sử dụng vùng chứa như một phần cuộc sống hàng ngày của bạn với tư cách là nhà phát triển phần mềm. Bộ chứa đảm bảo tính nhất quán giữa các hệ điều hành và bằng cách sử dụng chúng, bạn có thể đảm bảo tính đồng nhất trong toàn nhóm. Triển khai vùng chứa tương đối dễ dàng vì môi trường sản xuất và quá trình phát triển của bạn sẽ nhất quán. Bằng cách chạy MongoDB trong Docker, bạn có thể tạo các vùng chứa riêng biệt mới từ cùng một hình ảnh và bạn có thể kết nối ổ đĩa được liên kết với vùng chứa này với vùng chứa khác

Earthly là một công cụ tự động hóa để quản lý tất cả các thành phần, hình ảnh và vùng chứa Docker của bạn. Với Earthly, bạn có thể thực hiện tất cả các bản dựng của mình trong các thùng chứa và đảm bảo tính đồng nhất giữa các máy

Trong khi bạn ở đây

Earthly là khung CI/CD dễ dàng.
Phát triển đường dẫn CI/CD cục bộ và chạy chúng ở mọi nơi.

Docker-soạn ví dụ MongoDB

Soumi Bardhan

Tôi đang làm việc trong lĩnh vực thị giác máy tính và phát triển AI. Tôi viết bài kỹ thuật trên phương tiện. Đã hai lần tham gia mùa tài liệu của Google và yêu thích mã nguồn mở

Làm cách nào để sử dụng MongoDB với Docker Compose?

Danh sách việc cần làm .
Kéo hình ảnh MongoDB
Tạo một tệp để bắt đầu cơ sở dữ liệu và người dùng được xác thực
Viết docker-compose tập tin
Đăng nhập vào MongoDB bằng thông tin đăng nhập đã tạo

Làm cách nào để chạy MongoDB bằng Docker?

Chạy MongoDB trong Docker Container . Để sản xuất, ứng dụng có thể kết nối với cơ sở dữ liệu được lưu trữ trên đám mây bằng MongoDB Atlas hoặc MongoDB Enterprise Server. Điều này sẽ lấy hình ảnh chính thức mới nhất từ ​​​​Docker Hub. pull the latest MongoDB image and run it in a Docker container. For production, the application can connect to a cloud-hosted database using the MongoDB Atlas or MongoDB Enterprise Server. This will pull the latest official image from Docker Hub.

Làm cách nào để viết Dockerfile cho MongoDB?

1. 1 Tạo tệp Docker. Tạo một tệp có tên Dockerfile trong bất kỳ thư mục nào trên máy cục bộ. $ cd ~/Johnny $ mkdir Docker $ cd Docker $ vim Dockerfile. .
1. 2 Tạo Image với Dockerfile. Mở Docker terminal, điều hướng đến thư mục chứa Dockerfile

Làm cách nào để kết nối MongoDB với Docker nodejs?

Phần 1. Cài đặt Docker trên máy của bạn. Thiết lập kho lưu trữ. .
2. Thiết lập một ứng dụng node js đơn giản
3. Tạo Dockerfile cho ứng dụng
4. Viết cấu hình Docker Compose
5. mô hình cầy mangut
6. Kết nối cơ sở dữ liệu MongoDB
7. Tạo API để nhận và lưu trữ người dùng. .
Phần 8. Chạy docker-compose để build ứng dụng