MongoDB với Docker và Docker Compose Trên thư mục chứa docker-compose-mongodb
Sử dụng [Máy chủ bắt đầu]
docker-compose.yml
loại một trong số này.// non detach mode
docker-compose up
hoặc
// detach mode
docker-compose up -d
Nó sẽ quay phiên bản mới nhất của MongoDB [hiện là phiên bản 4.x.x], hiển thị cổng vào máy chủ tại 27017.
Sử dụng [Dừng máy chủ]
Để tắt cơ sở dữ liệu mà không cần tháo container.
Để tắt cơ sở dữ liệu và tháo container.
Là dữ liệu hoặc người dùng đã tạo sẽ biến mất? Không, vì trong tệp Docker Compose, bạn có thể thấy rằng chúng tôi sử dụng hộp chứa dữ liệu có tên mongodb_data_container
để lưu trữ dữ liệu MongoDB.
Thông tin đăng nhập MongoDB [cho cơ sở dữ liệu admin
]
- Tên người dùng: Root
- Mật khẩu: rootpassword
Cách kết nối với MongoDB
Thông qua vỏ Mongo
Nhập cái này.
mongo admin -u root -p rootpassword
Nó sẽ kết nối với Port localhost 27017.
Lưu ý rằng lệnh mongo
nên được cài đặt trên máy tính. Trên Linux, điều này chỉ nên cài đặt mongodb-org-shell
. Tham khảo điều này để biết thêm chi tiết //docs.mongodb.com/manual/installation/
Một số mẹo nhanh sau khi đăng nhập
Hiển thị cơ sở dữ liệu:
Tạo cơ sở dữ liệu không tồn tại mới:
Hiển thị bộ sưu tập:
Hiển thị nội dung của một bộ sưu tập:
db.your_collection_name.find[]
Lưu dữ liệu vào bộ sưu tập:
db.your_collection_name.save[{"name":"Sony AK"}]
Hiển thị phiên bản cơ sở dữ liệu:
Tận hưởng máy chủ cơ sở dữ liệu MongoDB cục bộ của bạn cho bất kỳ mục đích nào bạn muốn, đối với tôi, thiết lập này là tốt cho mục đích thử nghiệm.
My-mongoclient:
]
Tệp này chứa văn bản unicode hai chiều có thể được giải thích hoặc biên dịch khác với những gì xuất hiện dưới đây. Để xem xét, hãy mở tệp trong một trình soạn thảo cho thấy các ký tự Unicode ẩn. Tìm hiểu thêm về các ký tự unicode hai chiều: '3' | |
# sudo docker-compose up: | |
dịch vụ:: | |
My-mongodb:: 'mongo' | |
Hình ảnh: Mongo: 4.2.3-Bionic: 'my-mongo-container' # give your contatner a name | |
- 27017: 27017: | |
Môi trường:MONGO_INITDB_DATABASE=your-database-name # database name you want to make | |
- Mongo_initdb_database = testMONGO_INITDB_ROOT_USERNAME=my-container-root-username # set your container root username | |
- Mongo_initdb_root_username = adminMONGO_INITDB_ROOT_PASSWORD=secret # set your contatner root password | |
Tập:: | |
-./init-mongo.js:/docker-entrypoint-initdb.d/init-mongo.js:ro | |
- ./mongo-volume:/data/db./mongo-volume:/data/db | |
Cổng:: | |
-'27017-27019: 27017-27019''27017-27019:27017-27019' | |
# ... các cấu hình khác ... ... other configs ... |
Tệp này chứa văn bản unicode hai chiều có thể được giải thích hoặc biên dịch khác với những gì xuất hiện dưới đây. Để xem xét, hãy mở tệp trong một trình soạn thảo cho thấy các ký tự Unicode ẩn. Tìm hiểu thêm về các ký tự unicode hai chiều
db.createUser[.createUser[ | |
{ | |
Người dùng: "YourUserName",: "YourUsername", | |
PWD: "Bạn: "“YourPasswordHere", | |
Vai trò: [: [ | |
{ | |
Người dùng: "YourUserName",: "readWrite", | |
PWD: "Bạn: "your-database-name" | |
Vai trò: [ | |
Vai trò: "Readwrite", | |
Vai trò: [ | |
Vai trò: "Readwrite", |
Tệp này chứa văn bản unicode hai chiều có thể được giải thích hoặc biên dịch khác với những gì xuất hiện dưới đây. Để xem xét, hãy mở tệp trong một trình soạn thảo cho thấy các ký tự Unicode ẩn. Tìm hiểu thêm về các ký tự unicode hai chiều
Phiên bản: '3.6': '3.6' | |
# Triển khai MongoDB với các tập lệnh tùy chỉnh và container với Client Mongo Client Deploys MongoDB with customization scripts and container with Mongo client | |
# //fabianlee.org/2018/05/20/docker-using-docker-compose-to-link-a-mongodb-server-and-client/ | |
# | |
# cách sử dụng: usage: | |
# sudo docker-compose build sudo docker-compose build | |
# sudo docker-compose up sudo docker-compose up | |
dịch vụ:: | |
My-mongodb:: | |
Hình ảnh: Mongo: 4.2.3-Bionic: mongo:4.2.3-bionic | |
container_name: My-MoMoDB: my-mongodb | |
Cổng:: | |
- 27017: 2701727017:27017 | |
Môi trường:: | |
- Mongo_initdb_database = testMONGO_INITDB_DATABASE=test | |
- Mongo_initdb_root_username = adminMONGO_INITDB_ROOT_USERNAME=admin | |
- Mongo_initdb_root_password = adminMONGO_INITDB_ROOT_PASSWORD=admin | |
Tập:: | |
# Kịch bản gieo hạt seeding scripts | |
-./mongo-entrypoint:/docker-entrypoint-initdb.d | |
# Khối lượng được đặt tên named volumes | |
- MongoDB:/data/dbmongodb:/data/db | |
- Mongoconfig:/data/configdbmongoconfig:/data/configdb | |
Mạng:: | |
- Mongo_Netmongo_net | |
My-mongoclient:: | |
# Build sẽ được gắn thẻ với 'hình ảnh' build will get tagged with 'image' | |
Xây dựng: ./my-mongoclient: ./my-mongoclient | |
Hình ảnh: Fabianlee/My-Mogoclient: 3.9: fabianlee/my-mongoclient:3.9 | |
container_name: My-mongoclient: my-mongoclient | |
Môi trường:: | |
- Mongo_initdb_database = testMONGO_SERVER=my-mongodb | |
- Mongo_initdb_database = testMONGO_INITDB_DATABASE=test | |
- Mongo_initdb_root_username = adminMONGO_INITDB_ROOT_USERNAME=admin | |
- Mongo_initdb_root_password = adminMONGO_INITDB_ROOT_PASSWORD=admin | |
Mạng:: | |
- Mongo_Netmongo_net | |
My-mongoclient:: | |
# Build sẽ được gắn thẻ với 'hình ảnh'my-mongodb | |
Tập:: | |
# Kịch bản gieo hạt default dir on Ubuntu: /var/lib/docker/volumes | |
-: | |
# Khối lượng được đặt tên: | |
Mạng:: | |
- Mongo_Net: | |
My-mongoclient:: bridge |