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: 27017
bindIp: "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-test
ports:
- 7700:7700
depends_on:
- mysql
- redis
- mongo
- minio
mysql:
image: mysql:8.0.20
container_name: mis-mysql
ports:
- 7001:3306
environment:
MYSQL_ROOT_PASSWORD: abc123456
volumes:
- /root/finance/mysql-test/data:/var/lib/mysql
- /root/finance/mysql-test/conf:/etc/mysql/conf.d
- /root/finance/mysql-test/logs:/etc/log/mysql
redis:
image: redis:6.0.10
container_name: mis-redis
ports:
- 7002:6379
volumes:
- /root/finance/redis-test/conf:/usr/local/etc/redis
command: redis-server /usr/local/etc/redis/redis.conf
mongo:
image: mongo:4.4.7
container_name: mis-mongo
ports:
- 7003:27017
volumes:
- /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/mongodb
environment:
ME_CONFIG_MONGODB_ADMINUSERNAME: root
ME_CONFIG_MONGODB_ADMINPASSWORD: abc123456
command: --config /etc/mongo/mongod.conf
minio:
image: bitnami/minio:latest
container_name: mis-minio
ports:
- 7004:9001
- 7005:9000
volumes:
- /root/finance/minio-test/data:/bitnami/minio/data
environment:
- MINIO_ROOT_USER=root
- MINIO_ROOT_PASSWORD=abc123456
3.2 一键启动与停止
- 启动服务:docker compose up -d
- 查看日志:docker compose logs -f
- 停止服务:docker compose down