docker部署微信小程序自动构建发布和更新

news2024/12/28 1:16:44

通过 Jenkins 和 Docker 部署微信小程序,并实现自动构建、发布和版本更新,主要涉及以下几个步骤:

  1. 设置 Jenkins 环境
  2. 配置 GitLab 与 Jenkins 的集成
  3. 构建 Docker 镜像
  4. 部署和发布微信小程序
  5. 配置 Jenkins 自动构建

以下是详细的步骤说明:


1. 设置 Jenkins 环境

首先,确保你已经安装和配置了 Jenkins 服务器。假设你已经安装了 Jenkins,并且 Jenkins 能够正常运行。

安装 Jenkins 所需插件:
  • Docker Plugin:用于在 Jenkins 中执行 Docker 操作。
  • GitLab Plugin:用于集成 GitLab 仓库与 Jenkins。
  • Pipeline Plugin:用于通过流水线(Pipeline)来定义构建过程。

在 Jenkins 上安装插件的方法:

  1. 进入 Jenkins Dashboard,点击 Manage Jenkins
  2. 选择 Manage Plugins
  3. Available 标签页中,搜索并安装以下插件:
    • GitLab Plugin
    • Docker Pipeline Plugin
    • Pipeline Plugin

2. 配置 GitLab 与 Jenkins 集成

确保你在 Jenkins 上配置了与 GitLab 的集成,以便 Jenkins 可以从 GitLab 获取代码并触发构建。

配置 GitLab Webhook
  1. 登录到你的 GitLab 仓库。

  2. 进入 Settings -> Webhooks

  3. 添加一个新的 Webhook,输入 Jenkins 服务器的 URL,格式为:

    http://<jenkins_url>/project/<jenkins_job_name>
    

    例如:

    http://localhost:8080/project/wechat-miniapp-build
    
  4. 选择 Push eventsMerge requests,这样每次代码提交到 GitLab 时,Jenkins 会自动开始构建。

配置 GitLab 连接到 Jenkins
  1. 进入 Jenkins,点击 Manage Jenkins -> Configure System
  2. GitLab 配置部分,输入 GitLab 的 API URL 和 API Token。你需要创建一个 GitLab 访问令牌(Token):
    • 在 GitLab 上,进入 User Settings -> Access Tokens,创建一个新的访问令牌。
  3. 保存设置后,你可以通过 GitLab Plugin 连接到 GitLab 仓库。

3. 构建 Docker 镜像

在 Jenkins 中创建一个 Pipeline 作业,用来构建 Docker 镜像并部署微信小程序。

Dockerfile 示例

首先,在你的微信小程序项目根目录下创建一个 Dockerfile,用于构建 Docker 镜像。

# 使用 Node.js 镜像作为基础镜像
FROM node:16

# 创建并设置工作目录
WORKDIR /app

# 将当前目录下的项目文件复制到 Docker 容器中
COPY . .

# 安装依赖
RUN npm install

# 执行构建命令
RUN npm run build

# 暴露端口
EXPOSE 3000

# 启动微信小程序构建服务(例如,使用 Nginx 或其他方式)
CMD ["npm", "start"]
Jenkins Pipeline 脚本

创建一个 Jenkins Pipeline 来执行代码的拉取、Docker 镜像的构建和发布。

pipeline {
    agent any
    
    environment {
        DOCKER_IMAGE = "wechat-miniapp"
        DOCKER_REGISTRY = "your-docker-registry"  // Docker registry 地址
    }

    stages {
        stage('Checkout') {
            steps {
                // 从 GitLab 获取代码
                git 'http://your_gitlab_repo_url.git'
            }
        }

        stage('Build Docker Image') {
            steps {
                script {
                    // 构建 Docker 镜像
                    sh 'docker build -t ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:latest .'
                }
            }
        }

        stage('Push Docker Image') {
            steps {
                script {
                    // 将构建的镜像推送到 Docker Registry
                    sh 'docker push ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:latest'
                }
            }
        }

        stage('Deploy') {
            steps {
                script {
                    // 在服务器上拉取并运行 Docker 镜像
                    sh 'docker pull ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:latest'
                    sh 'docker run -d -p 3000:3000 ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:latest'
                }
            }
        }
    }
    
    post {
        always {
            // 构建结束后执行的操作,比如清理旧的容器
            sh 'docker system prune -f'
        }
    }
}
说明:
  • Checkout:从 GitLab 拉取代码。
  • Build Docker Image:构建 Docker 镜像。
  • Push Docker Image:将镜像推送到 Docker Registry(如果你使用的是私有仓库,可以推送到私人 Docker 仓库)。
  • Deploy:在目标服务器上拉取并运行 Docker 镜像。

4. 部署和发布微信小程序

  1. 构建微信小程序的发布版本
    使用 npm run build 命令来构建生产版本,通常会生成一个用于发布的文件夹(例如,dist/build/)。然后将这些文件部署到你选择的 web 服务器上(例如 Nginx、Apache 等)。

  2. 上传小程序代码
    微信小程序通常需要使用微信开发者工具上传到微信服务器。你可以在构建完成后,利用微信小程序开发者工具的命令行工具进行自动化上传。

    微信小程序提供了 CLI 工具,叫做 weapp-cli,你可以通过以下方式上传代码:

    npm install -g weapp-cli
    weapp-cli upload --appid <your_app_id> --project <path_to_your_project>
    

    然后可以将 upload 命令添加到 Jenkins Pipeline 的最后一个阶段。

    stage('Upload to WeChat') {
        steps {
            script {
                // 上传到微信小程序
                sh 'weapp-cli upload --appid <your_app_id> --project ./dist'
            }
        }
    }
    

5. 配置 Jenkins 自动构建

每次有新代码提交到 GitLab 时,Jenkins 会通过 Webhook 自动触发构建过程。确保你的 GitLab 项目正确配置了 Webhook,指向 Jenkins 的构建 URL。

配置 Webhook:

GitLab 项目中,添加 Jenkins 的 Webhook,确保它能在每次推送代码后触发 Jenkins 构建任务。


总结

  1. Jenkins 安装和配置:确保你已经安装并配置了 Jenkins 和相关插件。
  2. GitLab 与 Jenkins 集成:通过 Webhook 配置 GitLab 与 Jenkins 的集成。
  3. Dockerfile 和 Jenkins Pipeline:编写 Dockerfile 和 Jenkins Pipeline 脚本来构建、推送 Docker 镜像。
  4. 上传小程序:使用微信小程序 CLI 工具上传构建的代码。
  5. 自动化构建和部署:通过 Webhook 和 Jenkins 自动化构建和部署流程。

在 AlmaLinux 上配置 Jenkins 自动化构建、Docker 部署和与 GitLab 集成的步骤,涵盖从系统安装到 Jenkins 配置、Docker 部署、GitLab 集成、以及微信小程序自动构建和上传等过程。下面是详细的安装和配置步骤。


1. 安装 Jenkins 和依赖

首先,我们需要在 AlmaLinux 上安装 Jenkins。

1.1 安装 Java(Jenkins 的运行依赖)

Jenkins 需要 Java 运行环境,通常推荐使用 OpenJDK。

sudo dnf install java-11-openjdk-devel -y
1.2 安装 Jenkins

Jenkins 官方提供了 RHEL/CentOS 8 和 AlmaLinux 8 的安装包。你可以通过以下步骤安装 Jenkins:

  1. 添加 Jenkins 仓库
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
  1. 导入 Jenkins GPG 密钥
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
  1. 安装 Jenkins
sudo dnf install jenkins -y
1.3 启动 Jenkins 服务

安装完成后,启动 Jenkins 服务并使其开机自启:

sudo systemctl start jenkins
sudo systemctl enable jenkins
1.4 开放 Jenkins 的端口(默认 8080)
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
1.5 访问 Jenkins Web UI

在浏览器中访问 Jenkins:

http://<your-server-ip>:8080

首次访问时,Jenkins 会要求你输入解锁密钥。你可以在以下位置找到它:

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

输入密码后,你可以继续设置 Jenkins。


2. 安装 Jenkins 插件

在 Jenkins 中,我们需要安装一些插件来支持 Docker 和 GitLab 集成。

  1. 进入 Jenkins 控制台,点击 Manage Jenkins -> Manage Plugins
  2. Available 标签下,搜索并安装以下插件:
    • Docker Pipeline:支持在 Jenkins 中执行 Docker 命令。
    • GitLab Plugin:与 GitLab 仓库集成。
    • Pipeline Plugin:用于定义 Jenkins 流水线(Pipeline)。

安装完成后,重启 Jenkins。


3. 安装 Docker

在 Jenkins 中使用 Docker 来构建和部署微信小程序。首先,你需要安装 Docker。

3.1 安装 Docker
# 安装 Docker 依赖
sudo dnf install -y yum-utils device-mapper-persistent-data lvm2

# 设置 Docker 仓库
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 安装 Docker CE
sudo dnf install docker-ce docker-ce-cli containerd.io -y

# 启动并启用 Docker
sudo systemctl start docker
sudo systemctl enable docker
3.2 配置 Docker 用户权限

为了避免每次运行 Docker 命令时都需要使用 sudo,你可以将 Jenkins 用户添加到 docker 组:

sudo usermod -aG docker jenkins

然后重新启动 Jenkins 服务:

sudo systemctl restart jenkins

4. 配置 GitLab 集成

Jenkins 需要能够从 GitLab 获取代码并触发构建。

4.1 配置 GitLab Webhook
  1. GitLab 上,进入你的项目。

  2. 进入 Settings -> Webhooks

  3. 添加一个新的 Webhook,设置 URL 为 Jenkins 构建的 URL:

    http://<jenkins-ip>:8080/project/<jenkins-job-name>
    
    • 选择 Push eventsMerge request events,确保每次提交或合并时 Jenkins 都能触发构建。
4.2 配置 GitLab Plugin
  1. 在 Jenkins 中,点击 Manage Jenkins -> Configure System
  2. GitLab 配置部分,输入 GitLab 的 URL 和 API Token
    • 在 GitLab 中生成 API Token:进入 User Settings -> Access Tokens 创建一个新的访问令牌。
  3. 配置完成后,保存并测试连接。

5. 创建 Jenkins Pipeline

使用 Jenkins Pipeline 来定义整个构建过程。创建一个新的 Pipeline 类型的 Job。

5.1 配置 Job
  1. 在 Jenkins 控制台,点击 New Item -> Pipeline
  2. Pipeline 配置页面,选择 Pipeline Script
  3. Pipeline Script 部分编写你的 Jenkins Pipeline 脚本,定义构建、Docker 镜像构建和微信小程序上传的过程。
5.2 Jenkins Pipeline 脚本示例

以下是一个完整的 Jenkins Pipeline 脚本示例:

pipeline {
    agent any
    
    environment {
        DOCKER_IMAGE = "wechat-miniapp"
        DOCKER_REGISTRY = "your-docker-registry"
    }

    stages {
        stage('Checkout') {
            steps {
                // 从 GitLab 获取代码
                git 'http://your_gitlab_repo_url.git'
            }
        }

        stage('Build Docker Image') {
            steps {
                script {
                    // 构建 Docker 镜像
                    sh 'docker build -t ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:latest .'
                }
            }
        }

        stage('Push Docker Image') {
            steps {
                script {
                    // 推送 Docker 镜像到 Docker Registry
                    sh 'docker push ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:latest'
                }
            }
        }

        stage('Deploy') {
            steps {
                script {
                    // 拉取并运行 Docker 镜像
                    sh 'docker pull ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:latest'
                    sh 'docker run -d -p 3000:3000 ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:latest'
                }
            }
        }

        stage('Upload to WeChat') {
            steps {
                script {
                    // 使用微信小程序 CLI 上传代码
                    sh 'weapp-cli upload --appid <your_app_id> --project ./dist'
                }
            }
        }
    }
    
    post {
        always {
            // 清理 Docker 系统
            sh 'docker system prune -f'
        }
    }
}

6. 微信小程序的构建和上传

6.1 安装微信小程序 CLI 工具

如果你需要自动化上传微信小程序,可以使用 weapp-cli 工具。

在你的构建过程中,安装并使用微信小程序 CLI 来上传小程序代码:

npm install -g weapp-cli
6.2 配置自动上传

将上传命令添加到 Jenkins Pipeline 中的最后一个阶段:

stage('Upload to WeChat') {
    steps {
        script {
            // 上传到微信小程序
            sh 'weapp-cli upload --appid <your_app_id> --project ./dist'
        }
    }
}

你需要替换 <your_app_id>./dist 为你实际的小程序 App ID 和构建后的目录。


7. 自动化构建与部署

  • GitLab Push:每次代码提交到 GitLab 时,Webhooks 会触发 Jenkins 构建。
  • Jenkins Pipeline:Jenkins 会从 GitLab 拉取代码,构建 Docker 镜像,并进行微信小程序的自动构建与上传。
  • Docker 部署:使用 Docker 容器运行构建好的微信小程序。

8. 总结

通过这些步骤,你可以在 AlmaLinux 上配置 Jenkins,结合 Docker 部署和 GitLab 集成,自动化构建和发布微信小程序:

  1. 安装 Jenkins 和 Docker。
  2. 配置 Jenkins 与 GitLab 的集成。
  3. 使用 Docker 构建镜像并发布。
  4. 使用微信小程序 CLI 自动上传代码。
  5. 配置 Webhook,自动触发 Jenkins 构建。

要将微信小程序部署到 Docker 上,并使用 Jenkins 实现自动构建和更新,我们需要明确几个关键步骤。主要的步骤包括:

  1. 构建微信小程序:微信小程序的构建过程通常会生成一个可以通过 Web 服务器提供服务的构建文件夹。你可以将这些文件夹作为 Docker 镜像的一部分来部署。
  2. 创建 Docker 镜像:我们需要为微信小程序创建一个 Docker 镜像,这样可以在容器中运行它。
  3. Jenkins 自动构建和发布:在 Jenkins 中配置一个流水线来自动化从 GitLab 拉取代码、构建 Docker 镜像、推送到 Docker 仓库,并部署到目标服务器。

详细步骤:


1. 准备微信小程序项目

微信小程序本身是一个前端项目,通常使用 npm run build 进行构建,这样会生成一个可以通过 Web 服务器提供的构建文件夹(例如 dist/build/)。

首先,确保你已经准备好微信小程序的代码并能够通过以下命令构建它:

npm install
npm run build

2. Dockerfile 示例

接下来,我们需要为微信小程序创建一个 Dockerfile,这样就能将构建好的文件夹部署到 Docker 容器中。

2.1 创建 Dockerfile

在微信小程序的项目根目录下创建一个 Dockerfile,示例如下:

# 使用 Nginx 作为基础镜像
FROM nginx:alpine

# 设置工作目录
WORKDIR /usr/share/nginx/html

# 将本地构建的文件(例如 dist 文件夹)复制到容器的工作目录中
COPY ./dist /usr/share/nginx/html

# 暴露 Nginx 的默认端口 80
EXPOSE 80

# 默认命令:启动 Nginx
CMD ["nginx", "-g", "daemon off;"]

这里的 Dockerfile 做了以下几件事情:

  • 使用 Nginx 作为 Web 服务器来提供小程序的静态资源。
  • 将构建后的文件夹(例如 dist/)复制到 Nginx 默认的 Web 根目录 /usr/share/nginx/html
  • 设置 Nginx 启动命令并暴露容器的 80 端口。
2.2 构建 Docker 镜像

在项目根目录下,执行以下命令来构建 Docker 镜像:

docker build -t wechat-miniapp .
2.3 运行 Docker 容器

构建镜像之后,运行 Docker 容器:

docker run -d -p 8080:80 wechat-miniapp

这将启动一个 Nginx 服务器,监听宿主机的 8080 端口。你可以通过访问 http://<your-server-ip>:8080 来查看你的微信小程序。


3. 配置 Jenkins 自动构建和更新

接下来,我们要使用 Jenkins 自动化构建和更新过程。主要的任务是:从 GitLab 获取代码构建 Docker 镜像推送镜像到 Docker Hub 或私有仓库,然后在目标服务器上拉取最新的镜像并运行

3.1 安装 Jenkins 插件

在 Jenkins 上,安装以下插件:

  • Docker Pipeline:用于在 Jenkins 中执行 Docker 操作。
  • GitLab Plugin:用于与 GitLab 集成,拉取代码。
  • Pipeline Plugin:用于在 Jenkins 中创建流水线脚本。
3.2 配置 Jenkins 连接到 GitLab

在 Jenkins 上配置 GitLab 集成:

  1. 进入 Jenkins,点击 Manage Jenkins -> Configure System
  2. GitLab 配置部分,添加 GitLab 服务器的 URL 和 API Token。你可以在 GitLab 上创建一个新的 API Token。
  3. GitLab Plugin 中,测试连接是否成功。
3.3 配置 Jenkins Pipeline
  1. 在 Jenkins 中,点击 New Item -> Pipeline
  2. 在 Pipeline 配置页面中,选择 Pipeline script
  3. Pipeline script 中编写你的构建脚本,示例如下:
pipeline {
    agent any
    
    environment {
        DOCKER_IMAGE = "wechat-miniapp"
        DOCKER_REGISTRY = "your-docker-registry"  // Docker 仓库地址(例如 Docker Hub 或私有仓库)
        DOCKER_TAG = "latest"  // Docker 镜像标签
    }

    stages {
        stage('Checkout') {
            steps {
                // 从 GitLab 获取代码
                git 'http://your_gitlab_repo_url.git'
            }
        }

        stage('Install Dependencies') {
            steps {
                script {
                    // 安装依赖
                    sh 'npm install'
                }
            }
        }

        stage('Build') {
            steps {
                script {
                    // 构建微信小程序
                    sh 'npm run build'
                }
            }
        }

        stage('Build Docker Image') {
            steps {
                script {
                    // 构建 Docker 镜像
                    sh 'docker build -t ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:${DOCKER_TAG} .'
                }
            }
        }

        stage('Push Docker Image') {
            steps {
                script {
                    // 将镜像推送到 Docker 仓库
                    sh 'docker push ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:${DOCKER_TAG}'
                }
            }
        }

        stage('Deploy Docker Container') {
            steps {
                script {
                    // 在目标服务器上拉取最新镜像并运行 Docker 容器
                    sh 'docker pull ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:${DOCKER_TAG}'
                    sh 'docker stop wechat-miniapp || true'
                    sh 'docker rm wechat-miniapp || true'
                    sh 'docker run -d --name wechat-miniapp -p 8080:80 ${DOCKER_REGISTRY}/${DOCKER_IMAGE}:${DOCKER_TAG}'
                }
            }
        }
    }
    
    post {
        always {
            // 清理 Docker 镜像和容器
            sh 'docker system prune -f'
        }
    }
}
说明:
  • Checkout:从 GitLab 仓库中拉取代码。
  • Install Dependencies:安装微信小程序的依赖。
  • Build:构建微信小程序,通常会生成一个 dist/build/ 文件夹。
  • Build Docker Image:使用 Dockerfile 构建 Docker 镜像。
  • Push Docker Image:将构建好的 Docker 镜像推送到 Docker 仓库(例如 Docker Hub 或私有 Docker Registry)。
  • Deploy Docker Container:在目标服务器上拉取镜像并运行 Docker 容器,将微信小程序部署到生产环境。
  • Post Actions:清理 Docker 镜像和容器,释放资源。
3.4 配置 GitLab Webhook

GitLab 中,进入你的项目设置,配置 Webhook,使每次代码推送后自动触发 Jenkins 构建:

  1. GitLab 中,进入项目设置 -> Webhooks

  2. 添加 Jenkins 的 Webhook 地址:

    http://<jenkins-ip>:8080/project/<jenkins-job-name>
    
  3. 选择 Push eventsMerge requests,这样每次代码提交或合并时,Jenkins 会自动构建。


4. 总结

通过以上步骤,你可以实现以下目标:

  1. Docker 部署微信小程序:使用 Nginx 作为 Web 服务器,部署构建好的微信小程序。
  2. Jenkins 自动构建和发布:通过 Jenkins Pipeline,自动化从 GitLab 拉取代码、构建 Docker 镜像、推送镜像到 Docker 仓库、部署到目标服务器。
  3. 自动更新:每次代码提交到 GitLab,Jenkins 会自动触发构建并部署最新版本的小程序。

这样,你就可以通过 Docker 容器化的方式,利用 Jenkins 自动化构建和部署微信小程序,从而提高开发和发布的效率。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2266675.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

spring专题笔记(六):bean的自动装配(自动化注入)-根据名字进行自动装配、根据类型进行自动装配。代码演示,通俗易懂。

目录 一、根据名字进行自动装配--byName 二、根据类型进行自动装配 byType 本文章主要是介绍spring的自动装配机制&#xff0c; 用代码演示spring如何根据名字进行自动装配、如何根据类型进行自动装配。代码演示&#xff0c;通俗易懂。 一、根据名字进行自动装配--byName Us…

深入探讨 Go 中的高级表单验证与翻译:Gin 与 Validator 的实践之道20241223

深入探讨 Go 中的高级表单验证与翻译&#xff1a;Gin 与 Validator 的实践之道 在现代后端开发中&#xff0c;表单验证是保证数据完整性和服务稳定性的核心环节。如何优雅、高效地实现表单验证&#xff0c;同时提供人性化的错误提示&#xff0c;是每位开发者的必修课。在本文中…

UE5 渲染管线 学习笔记

兰伯特 SSS为散射的意思 带Bias的可以根据距离自动切换mip的卷积值 而带Level的值mipmaps的定值 #define A8_SAMPLE_MASK .a 这样应该就很好理解了 这个只采样a通道 带Level的参考上面的 朝左上和右下进行模糊 带Bias参考上面 随机数 4D 3D 2D 1D HLSL内置UV HLSL内置鼠标坐…

【Kubernetes 指南】基础入门——Kubernetes 基本概念(二)

目录 二、Pod 1、Pod 简介 2、Pod 图示 3、nginx 容器 二、Pod 1、Pod 简介 - Kubernetes 使用 Pod 来管理容器&#xff0c;每个 Pod 可以包含一个或多个紧密关联的容器。 - Pod 是一组紧密关联的容器集合&#xff0c;它们共享 PID、IPC、Network 和 UTS namespace&#…

基于高德地图js api实现掩膜效果 中间矢量 周围卫星图

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>管网服务</title><style>html,body,#ma…

【EI会议征稿】人工智能与遥感应用国际会议 (AIRSA 2025)

第一届人工智能与遥感应用国际学术会议&#xff08;AIRSA 2025&#xff09;将于2025年3月14-17日在中国长沙召开。会议聚焦人工智能与遥感技术应用&#xff0c;旨在为参会专家、学者和相关研究人员提供一个共享科研成果&#xff0c;拓宽研究思路&#xff0c;探索前沿技术&#…

Java圣诞树

目录 写在前面 技术需求 程序设计 代码分析 一、代码结构与主要功能概述 二、代码功能分解与分析 1. 类与常量定义 2. 绘制树的主逻辑 3. 彩色球的绘制 4. 动态效果的实现 5. 窗口初始化 三、关键特性与优点 四、总结 写在后面 写在前面 Java语言绘制精美圣诞树…

java web项目软件自动生成使用初体验-帅帅软件生成平台ASoft

软件默认 登陆账号 admin 密码 123456 一、软件使用简介说 AI软件自动生成越来越成熟&#xff0c;但AI生成的软件代码只是片段化的&#xff0c;不成体系。有没有一款可以10-30分钟自动生成JAVA WEB休系的软件&#xff1f;我也找了好久&#xff0c;终于找到了&#xff0c;开发…

闲谭Scala(2)--安装与环境配置

1. 概述 Java开发环境安装&#xff0c;需要两步&#xff0c;第一安装JDK&#xff0c;第二配置环境变量。 Scala的话&#xff0c;也是两步&#xff0c;第一安装Scale环境&#xff0c;第二配置环境变量。 需要注意的是&#xff0c;配置环境变量&#xff0c;主要是想让windows操…

NodeRed使用心得,实现增删改查等

使用场景介绍 在VUE中使用nodeRed实现对节点的 增删改查等功能&#xff0c;且储存成功之后下点击时启动对应流程 安装与配置 1.安装NodeRed npm install -g --unsafe-perm node-red 安装完成后&#xff0c;你可以通过运行以下命令来启动Node-RED node-red-start2. 配置文件 N…

升级鸿蒙Next,小记

写在前面 这个小记是想记录一下Next系统不断完善的过程&#xff0c;给想升级还没升级的同志们一些提醒。虽然这个系统还有这样那样的一些问题&#xff0c;但是我觉得升级之后很完美 续航时间明显变长了&#xff0c;充电&#xff0c;玩游戏以前会发热&#xff0c;现在完全不会…

Android Studio | 连接手机设备后,启动App时出现:Waiting For DebuggerApplication (App名)...

在这种情况下&#xff0c;打开目录文件&#xff0c;出现 Is:/storage/emulated/: Permission denied 问题分析&#xff1a; 以上两种情况表明应用程序试图访问Android设备的存储空间中的/storage/emulated/目录&#xff0c;但是没有足够的权限去执行这个操作。 解决办法&…

如何卸载和升级 Angular-CLI ?

Angular-CLI 是开发人员使用 Angular 的必备工具。然而&#xff0c;随着频繁的更新和新版本的出现&#xff0c;了解如何有效地卸载和升级 Angular-CLI 对开发人员来说至关重要。本指南提供了一个全面的、循序渐进的方法来帮助您顺利过渡到最新版本。 必备条件 确保您的系统上…

jangow靶机

打开靶机&#xff0c;打开kali&#xff0c;有的人会发现扫不到靶机的ip 在网上搜索了半天&#xff0c;发现是靶机的网卡配置有问题 重启靶机&#xff0c;选第二个 进去后再选第二个&#xff0c;按e 找到ro这一行 把ro后面这一行的内容都替换成ro rw signin init/bin/bash ctr…

[c++进阶(三)]单例模式及特殊类的设计

1.前言 在实际场景中,总会遇见一些特殊情况,比如设计一个类,只能在堆上开辟空间, 或者是设计一个类只能实例化一个对象。那么我们应该如何编写代码呢&#xff1f;本篇将会详细的介绍 本章重点&#xff1a; 本篇文章着重讲解如何设计一些特殊 的类,包括不能被拷贝,只能在栈/堆上…

CSharp: Oracle Stored Procedure query table

存储过程查询postgreSQL,Oracle 和sql server,Mysql 有区别。程序调用也是有区别。 oracle sql script: CREATE OR REPLACE PROCEDURE procSelectSchool(paramSchoolId IN char,p_cursor OUT SYS_REFCURSOR ) AS BEGINOPEN p_cursor FORSELECT *FROM SchoolWHERE SchoolId p…

macos 隐藏、加密磁盘、文件

磁盘加密 打开磁盘工具 点击添加 设置加密参数 设置密码 查看文件 不用的时候右键卸载即可使用的时候装载磁盘&#xff0c;并输入密码即可 修改密码 解密 加密&#xff0c;输入密码即可 禁止开机自动挂载此加密磁盘 如果不禁止自动挂载磁盘&#xff0c;开机后会弹出输入…

cesium入门学习一

1.学习目的 作为网页显示&#xff0c;我只要实现了cesium网页显示&#xff0c;就可以到时候通过qt的webview显示html界面&#xff0c;来显示地图&#xff0c;js对于学过c的人而言&#xff0c;没啥难度&#xff0c;不过是换一种语法&#xff0c;而且cesium的教程相对于osgeart…

dify的ChatFlow自定义上传图片并通过HTTP请求到SpringBoot后端

前情提要 交互场景&#xff1a;dify的ChatFlow上传文件(本示例是单张图片)&#xff0c;通过HTTP请求至SpringBoot后端dify版本&#xff1a;0.13.2python版本&#xff1a;3.12.7 1. 自定义上传变量 在【开始】节点自定义变量单文件上传变量file 2. 下接HTTP请求节点 BODY要…

Flutter DragTarget拖拽控件详解

文章目录 1. DragTarget 控件的构造函数主要参数&#xff1a; 2. DragTarget 的工作原理3. 常见用法示例 1&#xff1a;实现一个简单的拖拽目标解释&#xff1a;示例 2&#xff1a;与 Draggable 结合使用解释&#xff1a; 4. DragTarget 的回调详解5. 总结 DragTarget 是 Flutt…