自动化部署jsj

jsj项目自动化部署

1.自动化部署设备支持(服务器三台)

server-1 ci-build: 192.168.2.133

server-2 ci-data: 192.168.2.122

server-3 ci-deploy: 192.168.2.159

2.自动化部署软件技术支持

gitlab, drone-1.0, rancher-1.6.30, harbor-2.0,docker-19.03.8,docker-compose-1.25.5

3.软件部署及端口分配

3.1 ci-build(192.168.2.133)

drone-server drone-agent ports: 80, 443

sonarqube ports: 9000

rancher ports: 8080

emq ports: 18083,1883

docker-19.03.8,docker-compose-1.25.5

3.2 ci-data(192.168.2.122)

harbor

docker-19.03.8,docker-compose-1.25.5

3.3 ci-deploy(192.168.2.159)

gitlab

rancher-agent(容器运行宿主机)

docker-19.03.8, docker-compose-1.25.5

4. gitlab搭建

### centos
1.安装openssh及客户端,postfix服务器和lokkit命令
  sudo yum install -y curl policycoreutils-python openssh-server openssh-clients postfix cronie lokkit
2. 启动postfix邮件服务器和sshd,并设置为开机自动启动
  sudo systemctl enable sshd
  sudo systemctl start sshd
  sudo systemctl enable postfix
  sudo systemctl start postfix
  sudo chkconfig postfix on
3.使用lokkit命令设置防火墙,打开http和ssh的访问权限
  sudo lokkit -s http -s ssh
4. 添加gitlab镜像
  wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-       ce.0.el7.x86_64.rpm
##4.获取Gitlab源
  ##curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-             ce/script.rpm.sh | sudo bash
5.下载安装gitlab
  rpm -i gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
6.初始化配置
  sudo vim /etc/gitlab/gitlab.rb
  6.1.配置external_url
    external_url 'http://192.168.206.130/' # 将url换成本机ip,为gitlab对外提供的访问链接,也可以是域名。
  6.2.修改gitlab服务端口
   unicorn['port'] = 8081 # 将Unicorn打开并将默认端口从8080改为8081避免端口冲突,如本机没有使用8080端口,则可不改。
  6.3.重载配置
    sudo gitlab-ctl reconfigure
7.首次登录为root设置初始密码,配置邮箱,配置邮箱需要开启该邮箱的smtp授权,并记录授权码,否则会无法接收到gitlab发   送的邮件。
8.修改gitlab.rb
  ## GitLab email server settings
  ###! Docs: https://docs.gitlab.com/omnibus/settings/smtp.html
  ###! **Use smtp instead of sendmail/postfix.**
  gitlab_rails['smtp_enable'] = true
  gitlab_rails['smtp_address'] = "smtp.qq.com"
  gitlab_rails['smtp_port'] = 465
  gitlab_rails['smtp_user_name'] = "742372209@qq.com" # 接收邮箱
  gitlab_rails['smtp_password'] = "zobvwuxginehbeda" # 授权码
  gitlab_rails['smtp_domain'] = "smtp.qq.com"
  gitlab_rails['smtp_authentication'] = "login"
  gitlab_rails['smtp_enable_starttls_auto'] = true
  gitlab_rails['smtp_tls'] = true
  gitlab_rails['gitlab_email_from'] = '742372209@qq.com' # 此行必须新增
  然后 sudo gitlab-ctl reconfigure  重载配置
  然后在gitlab上选择settings 将其默认邮箱改为配置邮箱,发送邮件,并在配置邮箱中确认邮件信息,就会更新邮箱配置。   后续用管理员添加新用户并登陆。
9.配置git存储仓库目录及进行数据仓库迁移
  sudo vim /etc/gitlab/gitlab.rb
  配置git存储仓库:
  git_data_dirs({
    "default" => { "path" => "/home/gitlab/git-data" }
  })
  gitlab数据仓库迁移:
  sudo gitlab-ctl stop
  sudo rsync -av /var/opt/gitlab/git-data/repositories /home/gitlab/git-data/
  sudo gitlab-ctl upgrade # 组件版本更新(可选)
  sudo ls /home/gitlab/git-data/
  sudo gitlab-ctl start
  sudo gitlab-ctl reconfigure

### ubuntu
安装依赖
    sudo apt-get update
    sudo apt-get install -y curl openssh-server ca-certificates
    sudo apt-get install -y postfix
    信任Gitlab的GPG公钥
    curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null  
    配置镜像路径加速(清华镜像)
    sudo vim /etc/apt/sources.list.d/gitlab-ce.list
    到此路径:https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/ # 寻找对于你系统版本的镜像
    Ubuntu18.4: deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu bionic main # 将其写入 gitlab-ce.list
    安装gitlab-ce
    sudo apt-get update
    sudo apt-get install gitlab-ce
    执行配置
    sudo gitlab-ctl reconfigure
    启动gitlab
    sudo gitlab-ctl start
    后续配置的更改和centos基本没差别
    只是更改unicorn的时候连带更改
    unicorn['listen'] = '127.0.0.1'
    unicorn['port'] = 8081

5. docker及docker-compose安装(三台服务器都要安装)

1.卸载docker旧版本
  sudo apt-get remove docker docker-engine docker.io containerd runc
2.更新apt包索引
  sudo apt-get update
3.安装apt依赖包,用于通过https来获取仓库
  sudo apt-get install \
  apt-transport-https \
  ca-certificates \
  curl \
  gnupg-agent \
  software-properties-common
4.添加docker官方gpg密钥
  curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 
# 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 通过搜索指纹的后8个字符,验证您现在是否拥有带有指纹的密钥
  sudo apt-key fingerprint 0EBFCD88
# 设定稳定版仓库
  sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"
5.安装docker
  安装最新版本的docker-ce
  sudo apt-get install docker-ce docker-ce-cli containerd.io
  安装特定版本的docker-ce
  列出仓库可用版本
  apt-cache madison docker-ce
  安装指定版本docker-ce <VERSION_STRING> 是所需docker版本的版本号
  sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING>           containerd.io
6.测试
  sudo docker run hello-world
7.安装docker-compose
  7.1 docker-compose是python写的命令行程序可以直接pip安装,也在github上有地址                           https://github.com/docker/compose,可以直接clone下来python setup.py install 安装
  7.2 docker-compose
      sudo curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-           compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
  7.3 授权
      sudo chmod +x /usr/local/bin/docker-compose
查看版本信息
  docker-compose --version

6. gitlab集成drone

1.登入gitlab,选择settings,application。新建一个new application,注意 Redirect URL(回调地址) 这与使用drone   的版本有关,
  drone 0.x  url 应如 http://ip or 域名/authorize
  drone 1.x  url 应如 http://ip or 域名/login
  记录application ID 和 Secret
2.build主机(启动drone) 
  创建docker-compose.yml 内容如下
3.自搭建的gitlab需要在root登录的情况下到Admin Area -- Settings下 找到OutBound Request 勾选上Allow Requests To The Local Network From Hooks And Services,否则drone会因为权限问题,找不到gitlab的储存库。
4. 免密配置
  4.1.查看是否存在id_rsa.pub或id_dsa.pub,如果存在就跳过第二步
  cd ~/.ssh
  ls
  4.2.创建一个ssh-key,连续enter,就会在~/.ssh下创建id_rsa.pub等文件
  ssh-keygen -t rsa -C "邮箱"
  4.3.添加ssh-key到gitlab
  拷贝id_rsa.pub中的内容到gitlab配置ssh的地方,保存。
  4.4.测试
  ssh -T git@gitlab_ip  
  出现Are you sure you want to continue connecting (yes/no)? 输入yes
  如果前面配置了密码,接下来就会输入密码,没有配置就不用输入,会出现welcome to gitlab 表明配置成功。

7. drone-server及drone-agent的搭建

# ip:192.168.2.133 ci-build
### docker-compose.yml
version: "2.1"

services:

  drone-server:
    image: drone/drone:1
    ports:
      - 443:443
      - 80:80
    volumes:
      - /var/lib/drone:/data
    restart: always
    environment:
      - DRONE_AGENTS_ENABLED=true
      - DRONE_LOGS_DEBUG=true
      - DRONE_GIT_ALWAYS_AUTH=false
      - DRONE_GITLAB_SERVER=http://192.168.2.159/ # gitlab服务器地址
      - DRONE_GITLAB_CLIENT_ID=  # application ID
      - DRONE_GITLAB_CLIENT_SECRET= # Secret
      - DRONE_RPC_SECRET=e349d16fa70e27bdd1043c1ec3d83478 # 为server和agent设置一个统一识别码 随便输,但必须前后一致
      - DRONE_USER_CREATE=username:tklin,admin:true # 为drone的settings添加Trued username是gitlab用户名 admin默认为true
      - DRONE_RUNNER_CAPACITY=3
      - DRONE_SERVER_HOST=ip  # drone服务器地址
      - DRONE_SERVER_PROTO=http
      - DRONE_TLS_AUTOCERT=false
    networks:
      - ci_net


  drone-agent:
    image: drone/drone-runner-docker:1
    restart: always
    depends_on:
      - drone-server
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:rw
    environment:
      - DRONE_RPC_PROTO=http
      - DRONE_RPC_HOST=192.168.2.159 # 服务器地址
      - DRONE_RPC_SECRET=e349d16fa70e27bdd1043c1ec3d83478
      - DRONE_RUNNER_CAPACITY=3
      - DRONE_RUNNER_NAME=ip # runner名字 默认为服务器ip 
      - DRONE_LOGS_TRACE=true
    networks:
      - ci_net

networks:
  ci_net:

8. docker搭建本地sonarqube服务器

### docker搭建本地sonarqube服务器
1. 配置数据库,注意sonarqube7.9以上不支持mysql数据库,并且sonarqube7.9以下对于mysql数据库版本要求在5.78.0之    间。
  1.1. 本地拉取mysql5.7镜像 
       docker pull mysql:5.7 
  1.2. 启动mysql镜像 
       docker run -p 3307:3306 --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v            $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 
  1.3. 进入启动的mysql container
       docker exec -it mysql(容器名) bash
  1.4. 创建sonar数据库和sonar用户
       mysql -u root -p  # 登陆mysql
       create database sonar # 创建sonar数据库
       CREATE USER 'sonar'@'%' IDENTIFIED WITH mysql_native_password BY 'sonar';
       GRANT ALL PRIVILEGES ON *.* TO 'sonar'@'%'; # 添加远程登录用户
2. 启动sonar并开放9000端口
   docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 --link=mysql:mysql -e 				    SONARQUBE_JDBC_USERNAME=sonar -e SONARQUBE_JDBC_PASSWORD=sonar -e                                    SONARQUBE_JDBC_URL="jdbc:mysql://ip:3307/sonar?                                                      useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=
   true&useConfigs=maxPerformance&useSSL=false" sonarqube:6.7.5

9. harbor搭建

# 192.168.2.122 ci-data
1. 私有仓库harbor的搭建,harbor的搭建基于docker和docker-compose
  1.1.下载harbor离线安装包并解压
      wget https://storage.googleapis.com/harbor-releases/harbor-offline-installer-v1.5.0.tgz
      tar xf harbor-online-installer-v1.5.0.tgz
  1.2.根据下载的harbor版本不同,解压后harbor文件夹下的文件也不相同,harbor1.x版本解压后会有harbor.cfg这个文件,而harbor2.x版本解压后会有harbor.yml.tmpl这个文件,两个文件都是harbor的配置文件,不同的时,需要把2.x版本中新建一个harbor.yml文件,并将harbor.yml.tmp1中的内容复制到harbor.yml中,不然后续启动harbor会因找不到配置文件而出错。
  1.3.修改配置文件
      将harbor配置文件中hostname设置为访问地址,这个地址是作为外部访问仓库的唯一凭证,可以使用ip/域名,但不可设置为127.0.0.1 && localhost,如果是harbor2.x版本,还需要将配置文件中 https related config 部分注释掉,在未给harbor配置ssh证书的情况下。注意,2.x版本,harbor.yml harbor.yml.tmpl文件都需要修改。
      #### harbor.yml
      # https related config
      # https:
        # https port for harbor, default is 443
        # port: 443
  1.4.启动harbor,第一次启动harbor使用 sudo ./install.sh,这过程可能需要几分钟,需要拉取harbor所需的依赖镜像。
      启动成功后harbor文件夹下会多出docker-compose.yml文件,后续stop,restart,start都可以使用docker-compose.yml文件来执行。
      注意:此时要先docker-compose stop   
      sudo vim docker-compose.yml 
      在ports处添加:- 443:443
                   - 8443:8443
      配置443端口和8443端口,不然本地是不能登录的。
  1.5.使用ip登陆harbor,账号admin,密码默认Harbor12345
  1.6.harbor客户端配置免https
      harbor客户端其实就是任何一个安装了docker的主机,及代表有能力将镜像传送到仓库。
      首先cd etc/docker, 查看该目录下是否有daemon.json文件,没有则创建(touch daemon.json)。
      sudo vim daemon.json
      添加:{ "insecure-registries":["harbor_server ip"] }
      sudo systemctl daemon-reload
      sudo systemctl restart docker
      测试:
            docker login docker_server_ip
            登陆成功则表示配置成功
  1.7.镜像上传到harbor
      docker pull nginx  # 从docker hub 拉取nginx镜像
      docker tag nginx:版本(latest) harbor_server_ip项目名称(library)/nginx:1.0  # 给镜像打标签
      docker push harbor_server_p/项目名称(library)/nginx:1.0
  1.8.从harbor拉取镜像
      docker rmi -f 镜像id  # 删除本地镜像
      docker pull harbor_server:ip/项目名称(library)/nginx:1.0(镜像名称及版本)

10. rancher搭建及添加harbor做为镜像库

### rancher配置
# 192.168.2.133 ci-build
环境要求: linux主机,内核高于3.10,主机内存不低于1GB,rancher不支持Docker for Windows及 Docker for Mac
rancher服务器是个docker image 因此rancher本身不需要安装,只需要执行docker命令下载并且成功运行docker服务器镜像
启动 rancher 
# 单机模式(测试环境)
docker run -d --restart=always -p 8080:8080 rancher/server  # 单机模式 仅仅适用于测试环境,生产使用rancher,需挂载外置数据库(mysql)或者将数据挂载到宿主机上。使用数据库,还需要对数据库做性能优化,保证rancher运行的最佳性能。
登陆rancher
http://ip:port
初次登陆需配置访问控制。
注册url(提供访问-ui界面): 初次登陆ui界面提示-注册url(这个url是rancher—server运行所在的url,并且此url能够被主机所访问)
添加主机:基础架构-主机-添加主机-Custom(默认)-在第四步输入主机ip-第五步会获得注册rancher脚本,复制到rancher-agent主机并运行,主机注册成功后,点击关闭,就可以主机界面看到注册好的主机了。
### 集成harbor
基础架构-镜像库-添加镜像库-选择CuSTOM-私有仓库address(harbor_server_ip)
用户名和密码是harbor服务器的账号密码
添加服务 -- 选择镜像(harbor_server_ip/项目名称/镜像名:tag) -- 端口映射
访问rancher_ip:映射的端口号,如果可以访问成功,如镜像是nginx,则可以看到welcome to nginx 表示集成成功。

11. 项目结构展示

初始项目结构展示,如下图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Mcjgbule-1597976826012)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1597907115162.png)]

在与src同级目录中添加.drone.yml(自动化部署配置文件),Dockerfile(镜像定制文件),如图所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FlEPjslU-1597976826014)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1597907321897.png)]

12 .drone.yml文件详细配置

部署项目前的准备工作
1. 将项目从gitlab上下拉到本地,并创建.drone.yml文件和Dockerfile文件
2. 在drone界面打开项目开关,并在settings中勾选Trusted和public,这样当项目有更改就会触发drone,进行部署
3. 在搭建好的harbor仓库新建项目,并设置为公开,注意项目名要与.drone.yml文件中定制镜像配置项中的repo相对应
4. 在rancher中添加一个新的应用,并添加一个新的服务,服务的镜像可以为空,但端口映射必须是你项目开放的访问端      口,作为镜像上传后容器的的启动服务,并且在.drone.yml中启动容器项中的service相对应。
5. 在rancher中API中创建密钥,并记录access_key和secret_key并在.drone.yml进行配置

.drone.yml

kind: pipeline
name: pipeline-example-maven

# 代码编译
steps:
- name: build
  image: maven:3-jdk-10
  commands:
  - mvn clean package# 清洁打包 因为java项目需要编译后才能进行代码扫描
# 代码扫描
#steps:
- name: analysise
  image: aosapps/drone-sonar-plugin:1.0 # 基于drone的代码扫描插件
  settings:
    sonar_host: http://192.168.2.133:9000
    sonar_token: 8aea4f648d7cab5103c266063c4b059eeec90604
# 定制镜像
#steps:
- name: structure
  image: plugins/docker
  settings:
    dockerfile: ./Dockerfile
    registry: 192.168.2.122
    repo: 192.168.2.122/java/springboot-jsj-test
    username: admin
    password: Harbor12345
    tags:
      - 'latest'
    insecure: true
  volumes:
  - name: docker
    path: /var/run/docker.sock

# 启动容器
#steps:
- name: rancher-deploy
  image: pelotech/drone-rancher # drone-rancher插件,利用此插件来启动rancher
  settings:
    url: 'http://192.168.2.133:8080'
    access_key: 1750EF1CB7EC4D9EF2F2
    secret_key: wqiuKLoHvtRc4TyWS4H7a2gzUn2fRX8RALncF7xM
    service: javaspringboot/boot
    docker_image: 192.168.2.122/java/springboot-jsj-test:latest  # 镜像地址及版本号
    start_first: false
    confirm: true
    timeout: 301
    when:
      branch: master   
volumes:
- name: docker
  host:
    path: /var/run/docker.sock

13. Dockerfile文件详细配置

FROM maven:3-jdk-10 AS MAVEN_BUILD  ## 告知docker采用maven编译器,构建第一步采用基础镜像Docker将首先在本地查找镜像,本地不存在后,将从DockerHub拉取。 Maven会在最后阶段被剔除掉
MAINTAINER xichuan.lin  ## 镜像定制者信息
COPY pom.xml /build/ ## 在镜像中创建一个build目录,并拷入pom.xml文件
COPY src /build/src/ ## 拷入src目录到镜像中build目录
WORKDIR /build/  ## 设置build为工作目录,后续任何命令都在此目录中运行
RUN mvn package ##执行mvn包来运行编译和打包应用,生成成可执行的JAR文件。在第一次构建镜像时,Maven将从公共Maven库拉取所有需要的依赖项,并将它们缓存在镜像的本地。后续的构建将使用这个缓存版的镜像层,这意味着依赖项将在本地引用,而不必再次从外部拉取。至此,已经完成了镜像定义,只需等其构建成一个可执行的JAR文件。这是多阶段构建的第一部分。下一阶段将获取JAR并运行它。
FROM openjdk:8-jre-alpine  ##告知Docker多阶段构建的下一步采用openjdk:8-jre-alpine的基础镜像。再次使用Java 8 JRE的Alpine版本,这一步的选择其实比前面的Maven版本选择更为重要,因为存在于最终版的镜像只是openjdk:8-jre-alpine,因此如果要尽可能控制最终镜像大小的话,选择轻量级JRE镜像就非常重要。
COPY --from=MAVEN_BUILD /build/target/jsj-test.jar /app/  ##告知Docker从MAVEN_BUILD阶段的/build/target目录复制jsj-test.jar到/app目录。至于jar包的名字,这个在pom.xml中配置
EXPOSE 8090  ## 打开8090端口监听容器
ENTRYPOINT ["java","-jar","jsj-test.jar"]  ##告知Docker在容器运行本镜像时,运行哪些命令。本部分用冒号进行多命令的隔离。本案例中,需要把执行JAR文件复制到/app目录运行。

14. pom.xml 文件配置改动

1. 添加阿里镜像源
<repositories>
                <repository>
                        <id>aliyun</id>
                        <name>aliyun</name>
                        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
                </repository>
</repositories>

2. 配置jar包name
<build>
	<finalName>jsj-test</finalName>
</build>

3.取消maven编译过程中的测试
在build下添加:
 			<plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-surefire-plugin</artifactId>
                     <configuration>
                               <skip>true</skip>
                     </configuration>
              </plugin>

15. 配置mqtt服务器

docker-compose.yml

version: '3'

services:
  emq:
    image: emqx/emqx
    container_name: emqx
    ports:
      - "18083:18083"
      - "1883:1883"
      - "8084:8084"
      - "8883:8883"
      - "8083:8083"

16. docker配置mysql和redis数据库作为项目依赖

## rancher-agent主机为192.168.2.159 此服务器作为项目容器运行服务器,因此项目依赖也就直接使用docker安装在宿主机上
1.安装mysql 开放3306端口
  docker pull mysql:5.7 ## 拉取mysql镜像
  ## 通过镜像创建容器并运行
  docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v                 $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

  ##  -p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。

  ##  -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的            /etc/mysql/my.cnf
    
  ##  -v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。

  ##  -v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。

  ##  -e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。
2. 进入mysql容器更新登录密码并刷新权限
  docker exec -it 容器id /bin/bash
  GRANT ALL ON *.* TO 'root'@'%';  ## 授权
  ALTER USER 'root'@'localhost' IDENTIFIED BY 'pwd' PASSWORD EXPIRE NEVER;#更新加密规则
  ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';#更新root密码
  flush privileges; # 刷新权限
3. 安装redis 开放6379端口
  docker pull redis:latest  # 拉去最新版本redis镜像
  docker run -itd --name redis-test -p 6379:6379 redis  # 运行redis容器
  docker exec -it redis-test /bin/bash # 测试redis服务

17. 项目配置部署服务器的数据库及mqtt

  1. 配置数据库

    在项目文件springboot-jsj-test\src\main\resources\application-dev.yml中配置数据库,如下图:

    配置mysql

    1597912404661

    配置redis

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DZCvlRjE-1597976826017)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1597912483548.png)]

  1. 配置mqtt服务器

    在项目文件src\main\java\com\mht\springbootmybatisplus\common_entity\PubMsg.java中配置mqtt服务器,如下图所示:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-h1XVt0Wq-1597976826020)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1597912644994.png)]

    至此,项目部署的配置全部完成,接下来将修改的配置代码及添加的文件上传到gitlab中,自动触发drone,并运行.drone.yml文件,实现自动化的编译-代码扫描-镜像定制-上传-容器部署

\resources\application-dev.yml中配置数据库,如下图:

配置mysql

1597912404661

配置redis

[外链图片转存中…(img-DZCvlRjE-1597976826017)]

  1. 配置mqtt服务器

    在项目文件src\main\java\com\mht\springbootmybatisplus\common_entity\PubMsg.java中配置mqtt服务器,如下图所示:

    [外链图片转存中…(img-h1XVt0Wq-1597976826020)]

    至此,项目部署的配置全部完成,接下来将修改的配置代码及添加的文件上传到gitlab中,自动触发drone,并运行.drone.yml文件,实现自动化的编译-代码扫描-镜像定制-上传-容器部署

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值