diff --git a/docker/Dockerfile b/docker/Dockerfile new file mode 100644 index 00000000..cff16958 --- /dev/null +++ b/docker/Dockerfile @@ -0,0 +1,55 @@ +FROM debian:buster-slim + +ENV VERSION 1.0 +ENV AUTHOR kerwincui +ENV INFO wumei-smart + +# 安装工具和设置时区 +RUN apt-get update && \ + apt-get install vim -y --no-install-recommends && \ + apt-get install wget -y --no-install-recommends && \ + apt install curl -y --no-install-recommends && \ + ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime + +# 安装nginx和redis,需要容器内配置nginx和redis +RUN apt-get install nginx -y --no-install-recommends && \ + apt-get install redis-server -y --no-install-recommends + +#安装jdk8 +RUN mkdir /usr/share/man/man1 && \ + apt-get update && \ + apt install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common -y && \ + wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ && \ + apt update && \ + apt install adoptopenjdk-8-hotspot -y --no-install-recommends + +# 安装 emqx,需要修改密码 +RUN apt update && apt install -y \ + apt-transport-https \ + ca-certificates \ + curl \ + gnupg-agent \ + software-properties-common && \ + curl -fsSL https://repos.emqx.io/gpg.pub | apt-key add - && \ + add-apt-repository \ + "deb [arch=amd64] https://repos.emqx.io/emqx-ce/deb/ubuntu/ \ + ./bionic \ + stable" && \ + apt update && \ + apt install emqx -y --no-install-recommends + +# 安装mysql,需要容器内安装 + +# 挂载卷 +VOLUME /var/wumei-smart + +# 启动脚本 +COPY docker-entrypoint.sh / +ENTRYPOINT ["/docker-entrypoint.sh"] + +# 拷贝前后端代码 +#COPY wumei-smart /var/ + +# 映射端口 +EXPOSE 80 3306 1883 18083 \ No newline at end of file diff --git a/docker/Readme.txt b/docker/Readme.txt new file mode 100644 index 00000000..d945db64 --- /dev/null +++ b/docker/Readme.txt @@ -0,0 +1,87 @@ +# 服务启动 +service nginx start +service redis-server start +service mysql start +emqx start +java -jar /var/wumei-smart/app.jar + +# 镜像构建 +docker build -t wumei-smart:1.0 . +# 复制文件到容器 +docker cp wumei-smart/* container:/var/wumei-smart/ + +# 容器运行 +docker run \ +--name wumei-smart \ +--publish 80:80 \ +--publish 18083:18083 \ +--publish 1883:1883 \ +--publish 3306:3306 \ +--restart always \ +--detach \ +wumei-smart:1.0 + + + +########################容器内处理########################## +# 安装mysql +# wget http://repo.mysql.com/mysql-apt-config_0.8.13-1_all.deb +# apt install ./mysql-apt-config_0.8.13-1_all.deb +# apt update +# apt install mysql-server -y +# service mysql start +# mysql_secure_installation +# 配置远程访问 +### vim /etc/mysql/mysql.conf.d/mysqld.cnf ,注释bind-address +### 本地登录mysql并更新用户host,并刷新 +### update mysql.user set host='%' where user='root'; flush privileges; +# 查看mysql字符集编码 +### show variables like 'character%'; +# 修改编码 +### vim /etc/mysql/mysql.conf.d/mysqld.cnf ,增加character-set-server=utf8 +### vim /etc/mysql/conf.d/mysql.cnf ,增加default-character-set=utf8 +# 导入sql文件 + +# 配置redis +# vim /etc/redis/redis.conf ,取消注释requirepass admin123,注释 bind:127.0.0.1 + +# 配置docker-entrypoint.sh +# 启动mysql和java app + +# 配置系统时区 +# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime +# 或者export TZ=Asia/Shanghai + +# 配置nginx +# vim /etc/nginx/nginx.conf,nginx服务配置 + +http { + include mime.types; + default_type application/octet-stream; + sendfile on; + keepalive_timeout 65; + + server { + listen 80; + server_name localhost; + + location / { + root /var/wumei-smart/vue; + try_files $uri $uri/ /index.html; + index index.html index.htm; + } + + location /prod-api/{ + proxy_set_header Host $http_host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header REMOTE-HOST $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_pass http://localhost:8080/; + } + + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root html; + } + } +} diff --git a/docker/docker-entrypoint.sh b/docker/docker-entrypoint.sh new file mode 100644 index 00000000..82e5dab4 --- /dev/null +++ b/docker/docker-entrypoint.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +# start service +startTime=$(date "+%Y-%m-%d %H:%M:%S") +echo $startTime : wumei-smart is starting... + +service nginx start +service redis-server start +emqx start +#service mysql start +#java -jar /var/wumei-smart/java/app.jar + + +while true +do + time=$(date "+%Y-%m-%d %H:%M:%S") + echo $time : wumei-smart is running... + sleep 3600 +done + + diff --git a/docker/wumei-smart/java/放置后端java程序.txt b/docker/wumei-smart/java/放置后端java程序.txt new file mode 100644 index 00000000..e69de29b diff --git a/docker/wumei-smart/vue/放置前端vue程序.txt b/docker/wumei-smart/vue/放置前端vue程序.txt new file mode 100644 index 00000000..e69de29b