当前位置: 首页 > news >正文

思而忧网站网站怎么关闭

思而忧网站,网站怎么关闭,石家庄网站建设维护,品牌网站推广Docker部署 本小节#xff0c;讲解如何将前端 后端项目#xff0c;使用 Docker 容器#xff0c;部署到 dev 开发环境下的一台 Mac 电脑上。 1 环境准备 需要安装如下环境#xff1a; Docker#xff1a;容器MySQL#xff1a;数据库Redis#xff1a;缓存Nginx#x…Docker部署 本小节讲解如何将前端 后端项目使用 Docker 容器部署到 dev 开发环境下的一台 Mac 电脑上。 1 环境准备 需要安装如下环境 Docker容器MySQL数据库Redis缓存Nginx负载均衡 1.1 安装 Docker 此处省略自行查询安装环境。安装后配置加速镜像。 配置 Docker 镜像加速器推荐 修改 Docker 配置 编辑 /etc/docker/daemon.jsonLinux或 Docker Desktop 的配置Windows/macOS添加以下内容 { “registry-mirrors”: [“https://m.daocloud.io”] } 1.2 使用Docker网络 如果使用 Docker Compose可忽略本节。 默认 bridge 网络的局限性 不支持容器名称解析必须使用 IP 地址而 IP 地址可能会在容器重启后发生变化。 隔离性差所有容器共享同一个默认 bridge 网络可能存在端口冲突或安全问题。 配置复杂需要手动获取 IP 地址不适合动态环境。 为了克服默认 bridge 网络的局限性建议使用 自定义 bridge 网络它支持容器名称解析并提供更好的隔离性。 # 列出所有网络 docker network ls # 创建网络 docker network create my-network1.3 安装 MySQL ① 执行如下命令使用 Docker 启动 MySQL 容器。 # 拉取 MySQL 镜像 docker pull m.daocloud.io/docker.io/mysql:8.0# mac 启动 MySQL docker run -d \ -v ~/work/mysql/:/var/lib/mysql \ -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD123456 \ --restartalways --name mysql \ --network my-network \ m.daocloud.io/docker.io/mysql:8.0导入SQL脚本。 1.4 安装 Redis 执行如下命令使用 Docker 启动 Redis 容器。 # 拉取并启动 Redis 镜像 docker run -d \ --name redis \ --restartalways \ -p 6379:6379 \ -e REDIS_PASSWORD123456 \ --network my-network \ -v ~/work/redis/data:/data \ m.daocloud.io/docker.io/redis:7.0# 进入 Redis 容器并连接 docker exec -it redis redis-cli -a 1234561.5 安装 Nginx 创建挂载目录 Nginx 挂载到服务器的目录 /work/nginx/conf.d 用于存放配置文件 /work/nginx/html 用于存放网页文件 /work/nginx/logs 用于存放日志 /work/nginx/cert 用于存放 HTTPS 证书 创建 /work/nginx 目录并在该目录下新建 nginx.conf 文件避免稍后安装 Nginx 报错。内容如下 user nginx; worker_processes 1;events {worker_connections 1024; }error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid;http {include /etc/nginx/mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;log_format main $remote_addr - $remote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for; # access_log /var/log/nginx/access.log main;gzip on;gzip_min_length 1k; # 设置允许压缩的页面最小字节数gzip_buffers 4 16k; # 用来存储 gzip 的压缩结果gzip_http_version 1.1; # 识别 HTTP 协议版本gzip_comp_level 2; # 设置 gzip 的压缩比 1-9。1 压缩比最小但最快而 9 相反gzip_types text/plain application/x-javascript text/css application/xml application/javascript; # 指定压缩类型gzip_proxied any; # 无论后端服务器的 headers 头返回什么信息都无条件启用压缩include /etc/nginx/conf.d/*.conf; ## 加载该目录下的其它 Nginx 配置文件 }启动 Nginx ① 执行如下命令使用 Docker 启动 Nginx 容器。 docker run -d \ --name nginx --restart always \ -p 80:80 -p 443:443 \ -e TZAsia/Shanghai \ -v ~/work/nginx/nginx.conf:/etc/nginx/nginx.conf \ -v ~/work/nginx/conf.d:/etc/nginx/conf.d \ -v ~/work/nginx/logs:/var/log/nginx \ -v ~/work/nginx/cert:/etc/nginx/cert \ -v ~/work/nginx/html:/usr/share/nginx/html \ --network my-network \ m.daocloud.io/docker.io/nginx:stable② 执行 docker ps 命令查看到 Nginx 容器的状态是 UP 的。 2 部署后端服务 第一步修改配置 后端 dev 开发环境对应的是 application-dev.yaml 配置文件主要是修改 MySQL 和 Redis 为你的地址。 # MySQL 直接改成容器名称 url: jdbc:mysql://mysql:3306/demo?useSSLfalseserverTimezoneAsia/ShanghaiallowPublicKeyRetrievaltruenullCatalogMeansCurrenttruerewriteBatchedStatementstrue # MySQL Connector/J 8.X 连接的示例 # Reids 连接直接改成容器名称第二步编译后端 在项目的根目录下执行 mvn clean package -Dmaven.test.skiptrue 命令编译后端项目构建出它的 Jar 包。 第三步上传 Jar 包 创建 /work/projects/demo-server 目录将 demo-server.jar 上传到该目录下。 第四步构建镜像 ① 在 /work/projects/demo-server 目录下新建 Dockerfile 文件用于制作后端项目的 Docker 镜像。编写内容如下 FROM m.daocloud.io/docker.io/eclipse-temurin:17-jre## 创建目录并使用它作为工作目录 RUN mkdir -p /demo-server WORKDIR /demo-server COPY demo-server.jar app.jarENV TZAsia/Shanghai ENV JAVA_OPTS-Xms512m -Xmx512m -Djava.security.egdfile:/dev/./urandomEXPOSE 48080ENTRYPOINT java ${JAVA_OPTS} -jar app.jar ② 执行如下命令构建名字为 demo-server 的 Docker 镜像。 cd /work/projects/demo-server docker build -t demo-server .③ 在 /work/projects/demo-server 目录下新建 Shell 脚本 deploy.sh使用 Docker 启动后端项目。编写内容如下 #!/bin/bash set -eecho 开始删除 demo-server 容器 docker stop demo-server || true docker rm demo-server || true echo 完成删除 demo-server 容器echo 开始启动 demo-server 容器 docker run -d \ --name demo-server \ -p 48080:48080 \ -e SPRING_PROFILES_ACTIVEdev \ -v ~/work/projects/demo-server:/root/logs/ \ --network my-network \ demo-server echo 正在启动 demo-server 容器中需要等待 60 秒左右第五步启动后端 执行 sh deploy.sh 命令使用 Docker 启动后端项目。 执行 docker logs demo-server 命令查看启动日志。 3 部署前端 第一步修改配置 前端 dev 开发环境对应的是 .env.dev 配置文件主要是修改 VITE_BASE_URL 为你的后端项目的访问地址。 请求路径: VITE_BASE_URLhttp://127.0.0.1:48080第二步编译前端 在前端项目的根目录下执行 npm run build:dev 命令编译前端项目构建出它的 dist 文件里面是 HTML、CSS、JavaScript 等静态文件。 第三步上传 dist 文件 创建 /work/nginx/html/demo-ui-admin 目录将 dist 上传到该目录下。 4 配置 Nginx 转发 ① 在 /work/nginx/conf.d 目录下创建 demo-server.conf内容如下 server {listen 80;server_name localhost; ## 重要修改成你的外网 IP/域名location / {root /usr/share/nginx/html/demo-admin-ui;index index.html index.htm;try_files $uri $uri/ /index.html;}location /admin-api/ { ## 后端项目 - 管理后台proxy_pass http://demo-server:48080/admin-api/; ## 重要proxy_pass 需要设置为后端项目所在服务器的 IPproxy_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;}location /app-api/ { ## 后端项目 - 用户 Appproxy_pass http://demo-server:48080/app-api/; ## 重要proxy_pass 需要设置为后端项目所在服务器的 IPproxy_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;}} 友情提示 [root] 指令在本地文件时要使用 Nginx Docker 容器内的路径 即 /usr/share/nginx/html/demo-admin-ui否则会报 404 的错误。 ② 执行 docker exec nginx nginx -s reload 命令重新加载 Nginx 配置。 友情提示如果你担心 Nginx 配置不正确可以执行 docker exec nginx nginx -t 命令。 ③ 请求 http://127.0.0.1:80 地址成功访问前端项目地址。
http://www.hkea.cn/news/14436158/

相关文章:

  • 网站开发规划欧美简约风格网站设计
  • 大学生兼职网站的融资方案河南郑州做网站h汉狮
  • 网站建设开发教程视频天元建设集团有限公司汇票信誉
  • 长春专业网站建设公司什么软件推广好
  • 辛集手机网站建设梵客装饰公司官网
  • 网站平台优化陕西省建设网一体化平台官网
  • 河北建设网官方网站qq代挂主站网站建设
  • 芜湖网站建设哪家好汕头企业建站系统
  • 做网站推广员需要大同网站建设制作
  • 哪个专业是学网站开发的wordpress08影视源码
  • 广州注册公司的流程及费用江西短视频搜索seo哪家好
  • 河北省和城乡住房建设厅网站首页绍兴做网站
  • 大众的网站建设厂字型布局网站例子
  • gta5单机买房子网站在建设互联网站备案表
  • wordpress 建站 教程敏捷模型是软件开发模型吗
  • 建筑公司网站大全哪些软件可以做网页
  • 金山网站建设文字logo免费设计在线生成
  • 天津市网站建设公司python做互金网站
  • 公司做网站,要准备哪些素材网站建设 论文
  • seo网站推广优化论文isite企业建站系统
  • 台州网站制作方案沛县徐州网站开发
  • 网站建设送企业邮箱吗注册公司注册地址
  • 浙江网站建设前十的公司手机pc端浏览器
  • 网站建设加数据库响应式网页设计实例
  • 苏州智能网站建设wordpress备份至七牛
  • 做网站切图尺寸网站建设与管理大纲
  • 网站设计方法成都网站建设的费用
  • 字体设计教程网站好网络最火的销售平台
  • 北京优化网站建设帮人家做网站
  • 深圳公司网站建设服务织梦网站模板更换