虚拟机 Centos 整套生产环境部署

应用场景

当前项目为springboot项目,运用有mysql mongodb redis nginx mqtt等组件由于常规部署相对复杂,现需要简单的本地部署方式以达到快速部署的效果

方案

主机为windows,利用VMware将整套环境搭建好,后续直接做虚拟机移植

实施

安装VMware

下载VMware
下载安装centos的操作系统镜像
运行虚拟机

设置虚拟机固定ip

vi /etc/sysconfig/network-scripts/ifcfg-ens33

BOOTPROTO=”static” #dhcp改为static

ONBOOT=”yes” #开机启用本配置

IPADDR=192.168.1.200 #静态IP

GATEWAY=192.168.1.1 #默认网关

NETMASK=255.255.255.0 #子网掩码

DNS1=192.168.1.1 #DNS 配置

image.png

注意:IPADDR需要和本主机处于同一个网段,找一个不存在的IP设置即可。

安装docker并设置开机自启动

www.cnblogs.com/rwxwsblog/p…

docker设置bridge网络,保证各容器间通信

$ docker network create my-net

www.jb51.net/article/137…

docker 安装mysql

docker pull mysql

创建mysql数据挂载目录

image.png

启动mysql 挂载数据卷并配置网络 rootpwd123 设置开机自启动

www.cnblogs.com/jiefu/p/122…

docker run –name mysql –restart=always –network=my-net -v /zx_feed/mysql/conf:/etc/mysql/conf.d -v /zx_feed/mysql/logs:/logs -v /zx_feed/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=rootpwd123 -d -i -p 3306:3306 mysql:latest

进入mysql容器,并登陆mysql 设置远程访问开启

  • docker exec -it mysqlserver bash
  • mysql -uroot -p
  • ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘123456’;
  • flush privileges;

image.png

安装mongodb adminpwd123

创建mongo数据挂载文件夹

  • docker pull mongo
  • docker run -d -p 27017:27017 –restart=always –network=my-net -v /zx_feed/mongodb/config:/data/configdb -v /zx_feed/mongodb/data:/data/db –name mongo -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=adminpwd123 mongo –auth

安装redis kaide0630pwd

  • 创建redis数据挂载文件夹 /zx_feed/redis
  • docker pull redis
  • docker run -d -p 6379:6379 –network=my-net -v /zx_feed/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf -v /zx_feed/redis/data:/data –privileged=true –restart=always –name redis redis:latest /usr/local/etc/redis/redis.conf

安装mqtt服务器

拉取镜像 docker pull registry.cn-hangzhou.aliyuncs.com/synbop/emqttd:2.3.6

  • –name 名字
  • 1883:MQTT 协议端口
  • 8883:MQTT/SSL 端口
  • 8083:MQTT/WebSocket 端口
  • 8080:HTTP API 端口
  • 18083:Dashboard 管理控制台端口
  • -d 指定容器

docker run -itd –network=my-net –name mqtt -p 8883:18083 -p 8884:1883 –restart=always registry.cn-hangzhou.aliyuncs.com/synbop/emqttd:2.3.6

安装nginx

拉取镜像 docker pull nginx

配置文件随便找改下

挂载

docker run
–network=my-net
–name nginx
–restart=always
-d -p 80:80
-d -p 443:443
-v /zx_feed/nginx/html:/usr/share/nginx/html
-v /zx_feed/nginx/conf.d:/etc/nginx/conf.d
-v /zx_feed/nginx/logs:/var/log/nginx
nginx

docker安装部署springboot项目

编写Dockerfile
`FROM openjdk:8u201-jdk-alpine

ENV LANG zh_CN.UTF-8
ENV TZ=Asia/Shanghai

RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo “Asia/Shanghai” > /etc/timezone

CMD [“sh”,”-c”,”/data/startServer.sh”]
`

上传jar包 以及 Dockerfile

image.png

image.png

制作容器

docker build -t eladmin-system .

my.oschina.net/u/3971841/b…

docker run -dit –network=mydocker /zx_feed/java:/data –name zx_feed_server -p 8403:8403 zx_feed_images

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享