1. Docker部署步骤
- 安装Mysql,导入Sql脚本
- 安装Docker,运行docker命令
2. 导入Sql脚本
完成Mysql数据库安装。创建wumei-smart数据库,导入项目中的 springboot/sql/wumei-smart.sql
脚本。(Linux中安装mysql,配置大小写敏感,在 /etc/my.cnf
添加 lower_case_table_names=1
重启MYSQL服务。)
3. 运行Docker命令
运行命令前,对应修改Mysql的连接信息 DB_HOST
对应数据库连接地址,不能使用localhost和127.0.0.1作为连接地址,可以使用本机IP或者服务器地址; DB_NAME
对应数据库名称; DB_USER
对应数据库账号; DB_PASSWORD
对应数据库密码。如果Windows下使用该命令,把 \
换行符改为 ^
符号,文件上传路径 /var/wumei-smart/java/uploadPath
改为 D:/wumei-smart/java/uploadPath
。
docker run \
--name wumei-smart \
--env DB_HOST=192.168.0.100:3306 \
--env DB_NAME=wumei-smart \
--env DB_USER=root \
--env DB_PASSWORD=wumei-smart \
--publish 80:80 \
--publish 1883:1883 \
--publish 8083:8083 \
--volume /var/wumei-smart/java/uploadPath:/var/wumei-smart/java/uploadPath \
--restart unless-stopped \
--detach \
kerwincui/wumei-smart:1.1
系统启动,默认占用 80端口、1883端口、8083端口
,80端口用于Web端显示、1883端口用于Mqtt的Tcp连接,8083端口用于Mqtt的Websocket连接。如果提示端口占用,请关闭端口占用的程序,或者修改参数 --publish 80XX:80XX
冒号前面的端口;冒号后面是容器里面运行占用,不用修改。
容器启动后,等待10秒左右,出现 wumei-smart
等文字提示,表示启动成功。浏览器打开localhost,输入admin admin123即可访问系统。
docker ps
查看运行的容器docker logs containerId
查看容器运行的日志。例如docker logs 57A
4.详细命令介绍
容器中安装了 nginx:1.14.2 / redis-server:5.0.14 / emqx:4.0 / openjdk:8
,如果需要可以在Docker命令中,做对应的添加和修改。
docker run \
--name wumei-smart \ # 容器名称
--env DB_HOST=192.168.0.100:3306 \ # mysql连接地址,不能使用localhost和127.0.0.1作为连接地址
--env DB_NAME=wumei-smart \ # 数据库名称
--env DB_USER=root \ # 数据库账号
--env DB_PASSWORD=wumei-smart \ # 数据库密码
--publish 80:80 \ # Web端占用端口
--publish 1883:1883 \ # Mqtt的Tcp连接
--publish 8083:8083 \ # Mqtt的Websocket连接
--publish 18083:18083 \ # EXMX的控制台
--publish 8084:8084 \ # Mqtt加密的Websoket连接,例如小程序使用
--publish 8883:8883 \ # Mqtt加密的Tcp连接
--publish 8081:8081 \ # EMQX的接口地址
--publish 6379:6379 \ # Redis
--publish 8080:8080 \ # 系统后端
--volume /var/wumei-smart/java/logs:/var/wumei-smart/java/logs \ # 系统日志
--volume /var/wumei-smart/java/uploadPath:/var/wumei-smart/java/uploadPath \ # 系统上传的文件存储地址
--restart unless-stopped \ # 保持系统一直启动
--detach \ # 后台运行
kerwincui/wumei-smart:1.1 # 镜像名称
容器中日志和配置文件:
/var/wumei-smart/java/uploadPath # 系统上传文件的容器内地址
/var/wumei-smart/java/logs # 系统日志的容器地址
/etc/nginx/nginx.conf # nginx配置文件地址
/var/log/nginx/error.log # nginx错误日志
/etc/redis/redis.conf # redis配置文件
/var/log/redis/redis-server.log # redis日志
/etc/emqx/emqx.conf # emqx配置文件
/etc/emqx/plugins # emqx插件配置
/var/log/emqx # emqx日志