【Java】微服务项目的部署

微服务项目的部署

  • 准备
  • Centos安装 Docker
    • 镜像加速
      • 检查加速器是否生效
    • 下载docker-compose
      • 方法1 curl
      • 方法2 pip
      • 方法3 直接下载released
  • 用docker-compose部署中间件
  • 导入项目
    • 安装jdk + maven + git
    • 设置idea内存
      • 减小jar启动占用内存
      • 增加idea可使用内存

本文参考 https://gitee.com/gz-yami/mall4cloud,结合自己的思考和实际进行修改,侵联删

准备

  • 阿里云轻量应用服务器,操作系统版本CentOS 7
  • Xshell(用来连接云服务器)
  • IntelliJ IDEA 2022.1.3

Centos安装 Docker

从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: Docker CE 和 Docker EE。

Docker CE 即社区免费版,Docker EE 即企业版,强调安全,但需付费使用。

本文介绍 Docker CE 的安装使用。

移除旧的版本:

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

安装一些必要的系统工具:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

添加软件源信息:

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新 yum 缓存:

# centos 7
sudo yum makecache fast
# CentOS 8 没有fast这个命令
sudo yum makecache

安装 Docker-ce:

sudo yum -y install docker-ce

查看已安装docker版本

docker version

启动 Docker 后台服务

sudo systemctl start docker

开机启动

sudo systemctl enable docker

镜像加速

鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决。

可以使用阿里云的docker镜像地址:https://7qyk8phi.mirror.aliyuncs.com

新版的 Docker 使用 /etc/docker/daemon.json(Linux,没有请新建)。

请在该配置文件中加入:

(没有该文件的话,请先建一个)

{
  "registry-mirrors": ["https://7qyk8phi.mirror.aliyuncs.com"]
}

重启docker

sudo systemctl daemon-reload
sudo systemctl restart docker

检查加速器是否生效

配置加速器之后,如果拉取镜像仍然十分缓慢,请手动检查加速器配置是否生效,在命令行执行 docker info,如果从结果中看到了如下内容,说明配置成功。

Registry Mirrors:
 https://7qyk8phi.mirror.aliyuncs.com/

下载docker-compose

方法1 curl

#运行此命令以下载 Docker Compose 的当前稳定版本
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
#对二进制文件应用可执行权限
sudo chmod +x /usr/local/bin/docker-compose
#测试安装
docker-compose --version
#若有docker-compose version 1.29.2, build 5becea4c,则安装成功

上面那个github的下载不了可以换一个

curl -L https://get.daocloud.io/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

方法2 pip

如果还是失败,可以再换pip安装

1、安装python-pip

yum -y install epel-release

yum -y install python-pip

2、安装docker-compose

pip install docker-compose

待安装完成后,执行查询版本的命令确认安装成功

docker-compose version

方法3 直接下载released

但是这些方式都不如直接去github下一个包https://github.com/docker/compose/releases/tag/1.29.2

  1. 上传docker-compose文件到Linux系统(xshell有时候不太好用,可以考虑vscode中的SFTP插件)
  2. 将文件移动到/msr/1oca1/bin目录中
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
  1. 赋予执行权限
chmod +x /usr/local/bin/docker-compose

用docker-compose部署中间件

1.在文件编辑器上,使用全局替换的方式,将文件夹下的所有 192.168.1.46替换为服务器的ip

2.将所有中间件文件及文件夹打包上传到服务器,效果如图所示

3.执行授权命令

chmod -R 777 ./rocketmq/broker/logs
chmod -R 777 ./rocketmq/broker/store
chmod -R 666 ./minio/data
chmod -R 777 ./elasticsearch/data

4.启动容器

ps: 容器一共要下载7G左右的数据,请耐心等待

docker-compose up -d --build

5.各个端访问路径及其密码

请自行192.168.1.46替换为服务器ip

  • mysql: 使用数据库连接工具进行连接, 端口3306 账号及密码 root/root
  • minio: http://192.168.1.46:9000 账号及密码 admin/admin123456
  • redis: 端口6379,没有密码
  • nacos: http://192.168.1.46:8848/nacos 账号及密码 nacos/nacos
    • 注意检查naocs是否启动成功;nacos地址是否正确;nacos的8848、9848端口是否开放
  • kibana: http://192.168.1.46:5601
    -rocketmq-dashboard:http://192.168.1.46:8180

6.访问minio管理页面,右下角有个加号,创建存储区域(create bucker) 名为mall4cloud
【Java】微服务项目的部署_第1张图片

若要前端可以读取图片,需要设置权限

【Java】微服务项目的部署_第2张图片

7.创建es索引

新建索引

根据自己本地ip地址打开控制台,如下界面

http://192.168.1.46:5601/app/dev_tools#/console

【Java】微服务项目的部署_第3张图片

需创建order、product两个索引

复制下述命令到左框,点击执行后即可

命令的内容参考本目录下…/es/order.md …/es/product.md
【Java】微服务项目的部署_第4张图片

导入项目

安装jdk + maven + git

使用git下载项目

使用idea,点击open,打开下载好的目录

使用ctrl + shift + r 全局替换掉 192.168.1.46 为中间件服务器ip

设置idea内存

在idea启动所有的项目,是很吃力的事情。所以要修改下idea的配置,让其能有足够的内存启动项目

减小jar启动占用内存

编辑虚拟机配置,将每个服务的内存改为512M,-Xms512m -Xms512m -Xss256k,如果机器实在内存不够,可以将512适当减少,但是减少到一定程度,如256m会造成java虚拟机频繁的垃圾回收,会更加卡,所以推荐512m。

【Java】微服务项目的部署_第5张图片

增加idea可使用内存

编辑idea配置,增加内存,至少变为2G,根据需要,可以适当增大,以提高流畅度。

-Xms512m
-Xmx2048m
-XX:ReservedCodeCacheSize=512m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=100
editvm

idea配置
【Java】微服务项目的部署_第6张图片
【Java】微服务项目的部署_第7张图片

配置完毕,重启idea,此时可以启动所有项目。

  1. 启动项目
    【Java】微服务项目的部署_第8张图片

框框中的是必须启动的项目,其他是按需启动,推荐全部都启动起来,需要一台16G内存以上的电脑

你可能感兴趣的:(java,Linux,java,微服务,开发语言)