一、背景介绍
现有资源 | 数量 | 详情 |
---|---|---|
项目 | 14 | JAVA 前后端分离的开发模式 |
小组 | 14 | 每组成员组成:H5 JAVA 测试 云计算 安全 |
服务器 | 2台 | 64G内存一台 56 G 内存一台 |
公网 IP | 一个 | 最后部署之前分配 |
二、部署方案
基于以上情况,现做部署方案如下:
-
一台 144G 内存的服务器作为生产环境, 公网 IP
-
一台 128 G 内存的服务器作为测试环境, IP 内网 IP:10.9.62.253
-
测试环境同时作为平时练习之用
-
先在测试和生产环境都安装 docker 和 docker-compose
-
在服务器上创建 14 个组需要使用的用户,用户名使用自己的组名称
-
把 14 组用的 14 个用户添加到 docker 组中,以便让这几个用户能够使用 Docker
-
每个用户在自己的家目录下创建目录
自己组名组号
,
比如:目录名为:kangqiao10
的意思是
组名为:kangqiao
,组号为:10
-
在第 7 步创建的目录中创建
docker-compose.yml
文件,之后利用 docker-compose 创建集群。具体内容要求见下方示例。 -
这样每个组使用自己的用户启动自己的容器,进行部署操作。
三、docker-compose 定义要求
1 需要保证每个项目组创建的文件夹不重名。
2 doker-compose 中需要明确定义一个项目的网络名称。
3 不定义容器名以及服务器的主机名;
4 使用原生镜像。
5 使用 volumes
绑定的方式共享项目的代码文件。
6 docker-compose 中的服务名称中数据库的名称为:db组号
比如 db10
就是 第 10
组的的数据库,数据库使用单节点数据库。
7 docker-compose 中其他的服务名称随意,尽量见名知意。
建议的名称有 slb
、web1
、tomcat1
、db1
、