当前位置: 首页 > news >正文

CentOS 7.6 + Docker:搭建后端常用的开发环境

Docker系列文章


文章目录

  • Docker系列文章
  • 前言
  • 一、环境准备与Docker基础
    • 1.1 CentOS 7.6基础配置
      • 1.1.1 MobaXterm远程连接
      • 1.1.2 更新yum
    • 1.2 Docker与Docker Compose安装
      • 1.2.1 docker 安装
      • 1.2.2 docker-compose安装
  • 二、单容器创建
    • 2.1 Mysql容器
      • 2.1.1 数据目录映射
      • 2.1.2 创建mysql容器
    • 2.2 MongoDB容器
      • 2.2.1 数据目录映射
      • 2.2.2 mongod.conf 文件配置
      • 2.2.3 创建mongodb容器
    • 2.3 Redis容器
      • 2.3.1 数据目录映射
      • 2.3.2 redis.conf 文件配置
      • 2.3.3 创建redis容器
    • 2.4 Minio容器
      • 2.4.1 数据目录映射
      • 2.4.2 创建minio容器
  • 三、Docker Compose容器编排
    • 3.1 编写docker-compose.yml文件
    • 3.2 一键启动与停止
    • 3.3 命令演示


前言

本文将介绍在docker环境下如何搭建常用的后端开发环境。


一、环境准备与Docker基础

1.1 CentOS 7.6基础配置

1.1.1 MobaXterm远程连接

在这里插入图片描述

1.1.2 更新yum

yum update -y

1.2 Docker与Docker Compose安装

1.2.1 docker 安装

yum install docker -y

1.2.2 docker-compose安装

yum install docker-compose -y

二、单容器创建

2.1 Mysql容器

2.1.1 数据目录映射

  • /root/finance/mysql-test/data
  • /root/finance/mysql-test/conf
  • /root/finance/mysql-test/logs

2.1.2 创建mysql容器

docker run -it --name mysql-test -p 7001:3306 
-v /root/finance/mysql-test/data:/var/lib/mysql
-v /root/finance/mysql-test/conf:/etc/mysql/conf.d
-v /root/finance/mysql-test/logs:/etc/log/mysql
-e MYSQL_ROOT_PASSWORD=abc123456789 
-d  mysql:8.0.20

2.2 MongoDB容器

2.2.1 数据目录映射

  • /root/finance/mongo-test/mongod.conf
  • /root/finance/mongo-test/data/db
  • /root/finance/mongo-test/data/db

2.2.2 mongod.conf 文件配置

net:port: 27017bindIp: "0.0.0.0"
storage:dbPath: "/data/db"
security:authorization: enabled

2.2.3 创建mongodb容器

docker run -it --name mongo-test -p 7003:27017 
-v /root/finance/mongo-test:/etc/mongo 
-v /root/finance/mongo-test/data/db:/data/db 
-v /root/finance/mongo-test/mongod.conf:/etc/mongo/mongod.conf  
-e MONGO_INITDB_ROOT_USERNAME=admin 
-e MONGO_INITDB_ROOT_PASSWORD=gw0420- 
-d mongo:latest 
--config /etc/mongo/mongod.conf

2.3 Redis容器

2.3.1 数据目录映射

  • /root/finance/redis-test/conf

2.3.2 redis.conf 文件配置

bind 0.0.0.0
protected-mode yes
port 6379
tcp-backlog 511
timeout 0
tcp-keepalive 0
loglevel notice
logfile ""
databases 4
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir ./
requirepass abc123456

2.3.3 创建redis容器

docker run -it --name some-redis -p 7002:6379 
-v /root/finance/redis-test/conf:/usr/local/etc/redis 
-d --restart=always redis:latest 
redis-server /usr/local/etc/redis/redis.conf

2.4 Minio容器

2.4.1 数据目录映射

  • /root/finance/minio-test/data

2.4.2 创建minio容器

docker run -it --name minio-test -p 7004:9000 -p 7005:9001 
-v /root/finance/minio-test/data:/bitnami/minio/data 
-e MINIO_ROOT_USER=root 
-e MINIO_ROOT_PASSWORD=csy0420- 
-d bitnami/minio:latest

三、Docker Compose容器编排

3.1 编写docker-compose.yml文件


version: '2.1'
services:app:build: ./ container_name: mis-api-testports:- 7700:7700depends_on:- mysql- redis- mongo- miniomysql:image: mysql:8.0.20container_name: mis-mysqlports:- 7001:3306environment: MYSQL_ROOT_PASSWORD: abc123456volumes:- /root/finance/mysql-test/data:/var/lib/mysql - /root/finance/mysql-test/conf:/etc/mysql/conf.d- /root/finance/mysql-test/logs:/etc/log/mysqlredis:image: redis:6.0.10container_name: mis-redisports:- 7002:6379volumes:- /root/finance/redis-test/conf:/usr/local/etc/rediscommand: redis-server /usr/local/etc/redis/redis.confmongo:image: mongo:4.4.7container_name: mis-mongoports:- 7003:27017volumes:- /root/finance/mongo-test/mongod.conf:/etc/mongo/mongod.conf - /root/finance/mongo-test/data/db:/data/db- /root/finance/mongo-test/data/db:/var/log/mongodbenvironment:ME_CONFIG_MONGODB_ADMINUSERNAME: rootME_CONFIG_MONGODB_ADMINPASSWORD: abc123456command: --config /etc/mongo/mongod.confminio:image: bitnami/minio:latestcontainer_name: mis-minioports:- 7004:9001- 7005:9000volumes:- /root/finance/minio-test/data:/bitnami/minio/dataenvironment:- MINIO_ROOT_USER=root- MINIO_ROOT_PASSWORD=abc123456

3.2 一键启动与停止

  • 启动服务:docker compose up -d
  • 查看日志:docker compose logs -f
  • 停止服务:docker compose down

3.3 命令演示

在这里插入图片描述

相关文章:

  • springboot3 configuration
  • 软件质量保证与测试实验
  • 【计算机CPU架构】x86架构简介
  • <collection> 标签:用于定义 一对多关系 的映射规则
  • 【Python 集合 Set 】全面学习指南
  • 可转债双低轮动策略
  • c/c++怎样编写可变参数函数.
  • 第二章网络io
  • Spring MVC 的的核心原理与实践指南
  • PySide6 GUI 学习笔记——常用类及控件使用方法(常用图像类)
  • Python入门手册:条件判断
  • 【GitHub Pages】部署指南
  • idea 快捷键大全
  • SQL进阶之旅 Day 2:基础查询优化技巧
  • 李沐《动手学深度学习》| 4.4 模型的选择、过拟合和欠拟合.md
  • 以太坊的基本理解
  • 强化学习的前世今生(二)
  • 数量优势:使用Bagging和Boosting的集成模型
  • 计算机网络-WebSocket/DNS/Cookie/Session/Token/Jwt/Nginx
  • 使用大模型预测亚急性脊髓联合变性(SCD)的技术方案大纲
  • 东莞建网站公司动/网络推广的方法
  • 广州网站建设制作价格/线上推广策划方案范文
  • wordpress健身模版/排名优化百度
  • 廊坊做网站厂商定制/网站cms
  • 北京网站建/什么是竞价
  • wordpress后台配置文件/aso优化师