- vừa được xem lúc

Docker Compose cho các loại Database phổ biến

0 0 16

Người đăng: Hoàng Nguyên

Theo Viblo Asia

Docker Compose là một công cụ mạnh mẽ cho phép định nghĩa và khởi chạy các ứng dụng đa container Docker. Trong bài viết này, chúng ta sẽ cùng tìm hiểu các file docker-compose mẫu cho các loại Database phổ biến như MySQL, PostgreSQL, MongoDB, và Redis. Việc sử dụng các file docker-compose này sẽ giúp dễ dàng triển khai và quản lý các Database trong môi trường Docker Container, đồng thời đảm bảo tính nhất quán và khả năng mở rộng cho ứng dụng .

Và dưới đây là các file docker-compose mẫu cho các loại database :

1.MSSQL Server

version: "3" services: gateway-mssql: image: "mcr.microsoft.com/mssql/server:2017-latest" container_name: mssqlserver # tên container restart: always hostname: mssql environment: SA_PASSWORD: 123456 # Thiết lập password cho tài khoản sa ACCEPT_EULA: Y # Express: volumes: - mssqlvolume:/var/opt/mssql/data # thư mục lưu DB - ./logjava:/var/opt/mssql/backup # thư mục chứa file backup ports: - "1433:1433" # cổng kết nối volumes: mssqlvolume: 

2.MySQL

version: "3.7" services: mysql: container_name: mysql image: mysql:8.0 ports: - 3306:3306 volumes: - todo-mysql-data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: 123456 MYSQL_DATABASE: sample
volumes: todo-mysql-data: 

3.Posgres SQL

version: '3.0'
services: gateway-postgres: container_name: pg-database image: 'postgres:latest' environment: POSTGRES_USER: admin # Thiết lập user POSTGRES_PASSWORD: admin@1001 #Thiết lập password POSTGRES_DB: logjava # Thiết lập database PGDATA: /var/lib/postgresql/data # Nơi chứa data volumes: - './data/db:/data/db' - './data/postgresql:/var/lib/postgresql/data' ports: - '5432:5432' networks: - logjava
networks: logjava: name: logjava driver: bridge 

4.Redis

version: '3.8'
services: redis:
container_name: redis-01 image: redis:latest command: redis-server --save "" --maxmemory 128mb --maxmemory-policy allkeys-lru # Giới hạn max 128MB ran cho service redis ports: - 6379:6379 networks: - logjava
networks: logjava: name: logjava driver: bridge

5.MongoDB

version: "3.9"
services: my-mongodb: image: mongo:5.0.6 container_name: mongo-gateway ports: - 27017:27017 environment: - MONGO_INITDB_DATABASE=logjava_test - MONGO_INITDB_ROOT_USERNAME=admin # Thiết lập user root - MONGO_INITDB_ROOT_PASSWORD=admin1001 - TZ=Asia/Ho_Chi_Minh volumes: # thư mục lưu data và file config - ./mongodb:/data/db - ./mongoconfig:/data/configdb networks: - ten_network
networks: ten_network: name: ten_network driver: bridge 

6.Elastic Search

version: "3.0"
services: elasticsearch: container_name: es-container image: docker.elastic.co/elasticsearch/elasticsearch:7.11.0 environment: - xpack.security.enabled=false - "discovery.type=single-node" networks: - es-net ports: - 9200:9200 deploy: resources: limits: memory: 512M # Giới hạn bộ nhớ ram là 512MB kibana: container_name: kb-container image: docker.elastic.co/kibana/kibana:7.11.0 environment: - ELASTICSEARCH_HOSTS=http://es-container:9200 networks: - es-net depends_on: - elasticsearch ports: - 5601:5601
networks: es-net: driver: bridge 

Qua bài viết này, chúng ta đã tìm hiểu các file docker-compose mẫu cho các loại Database phổ biến như MySQL, PostgreSQL, MongoDB, Elasticsearch và Redis. Việc sử dụng các file docker-compose này sẽ giúp dễ dàng triển khai và quản lý các Database trong môi trường Docker Container, đồng thời đảm bảo tính nhất quán và khả năng mở rộng cho ứng dụng. Đây là một bước quan trọng trong quá trình hiện đại hóa cơ sở hạ tầng và ứng dụng với Docker.

Bình luận

Bài viết tương tự

- vừa được xem lúc

Tìm hiểu cơ bản về Docker - công nghệ đáng để Developer sử dụng

1. Giới thiệu.

0 0 44

- vừa được xem lúc

Tổng hợp kiến thức cần biết về Docker và Docker Swarm (Phần 3 - Thành phần & tính năng Docker)

I. Thành phần của Docker. 1. Docker Engine.

0 0 39

- vừa được xem lúc

Tổng hợp kiến thức cần biết về Docker và Docker Swarm (Phần 1 - Tổng quan về Docker)

I. Docker là gì.

0 0 41

- vừa được xem lúc

Tìm hiểu cơ bản về Kubernetes - K8s (Part 1)

. Lời nói đầu. . . V.

0 0 124

- vừa được xem lúc

Phân biệt Docker image vs Container

Giới thiệu. Docker là một phần mềm nguồn mở được thiết kế để hỗ trợ và đơn giản hóa việc phát triển ứng dụng.

0 0 44