iotBaidu问题小结 ******

 Service 程序JAR包部署:

  1、守护进程没有主清单文件:

修改pom.xml,追加如下,“mqttjava.MqttJavaMain” 为入口类:

    <build>
        <finalName>MqttJavaMain</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>1.2.1</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <transformers>
                                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <mainClass>mqttjava.MqttJavaMain</mainClass>
                                </transformer>
                            </transformers>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

2、后台程序不能正常运行:

d:>java -jar MqttService.jar
Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
        at sun.security.util.SignatureFileVerifier.processImpl(Unknown Source)
        at sun.security.util.SignatureFileVerifier.process(Unknown Source)
        at java.util.jar.JarVerifier.processEntry(Unknown Source)
        at java.util.jar.JarVerifier.update(Unknown Source)
        at java.util.jar.JarFile.initializeVerifier(Unknown Source)
        at java.util.jar.JarFile.getInputStream(Unknown Source)
        at sun.misc.JarIndex.getJarIndex(Unknown Source)
        at sun.misc.URLClassPath$JarLoader$1.run(Unknown Source)
        at sun.misc.URLClassPath$JarLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.misc.URLClassPath$JarLoader.ensureOpen(Unknown Source)
        at sun.misc.URLClassPath$JarLoader.<init>(Unknown Source)
        at sun.misc.URLClassPath$3.run(Unknown Source)

  解决办法:  删除对应的jar 包下的文件

zip -d MqttService.jar META-INF/*.RSA META-INF/*.DSA META-INF/*.SF

  2、jar包守护运行:

nohup java -jar MqttService.jar >output 2>&1 &

Jenkins配置:

JAR包部署:

  1、新建一个maven工程

  

  2、配置SVN仓库&构建策略

    

  3、循环触发,每5MIN触发方式:

    

  4、构建策略

      

//stop.sh
echo "Stopping kitking web"
pid=`ps -ef | grep kitking02-1.0-SNAPSHOT.jar | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
   echo "kill -9 的pid:" $pid
   kill -9 $pid
fi
//replace.sh
echo "kitking replace"
cp -f /root/.jenkins/workspace/kitking-adv/target/kitking02-1.0-SNAPSHOT.jar /kitking/tools/
echo "copy finish target jar to kitking tools dir"
//startup.sh
echo "startup kitking"
java -jar /kitking/tools/kitking02-1.0-SNAPSHOT.jar

 Tomcat War包部署:

PATH_TOMCAT:  /kitking/tools/apache-tomcat-7.0.88
PATCH_JENKINS: /root/.jenkins/workspace/SynergyWebService/target/com.synergy.demo.war

1. 先运行TOMCAT

cd /kitking/tools/apache-tomcat-7.0.88/bin
./shutdown.sh
./startup.sh

2. Jenkis配置

  

Jenkins/SynergyWebService表示:

  Jenkins工作空间有一个SynergyWebService项目。

root@instance-282sg05l:~/.jenkins/workspace# pwd
/root/.jenkins/workspace
root@instance-282sg05l:~/.jenkins/workspace# tree -L 1
.
├── kitking-adv
├── kitking-angular
├── kitking-html5
├── SynergyWebService
└── testMail

项目WAR包部署如下配置:

WAR/EAR files:表示WAR包所在位置。

Context path:    表示部署到Tomcat的应用目录名字,也代表URL的PATH部分

root@instance-282sg05l:/kitking/tools/apache-tomcat-7.0.88/webapps# pwd
/kitking/tools/apache-tomcat-7.0.88/webapps
root@instance-282sg05l:/kitking/tools/apache-tomcat-7.0.88/webapps# tree -L 1
.
├── docs
├── examples
├── host-manager
├── kitking
├── kitking.war
├── KKI
├── KKIOT
├── manager
├── phonePay
├── ROOT
├── RSI
├── wxpay
└── XaKHgDHMAV.txt

Credentials:    表示Tomcat认证允许,在Tomcat的配置文件中配置:

root@instance-282sg05l:/kitking/tools/apache-tomcat-7.0.88/conf# pwd
/kitking/tools/apache-tomcat-7.0.88/conf
root@instance-282sg05l:/kitking/tools/apache-tomcat-7.0.88/conf# tree
.
├── Catalina
│   └── localhost
├── catalina.policy
├── catalina.properties
├── context.xml
├── logging.properties
├── server.xml
├── tomcat-users.xml
└── web.xml

vim  ./tomcat-users.xml
<tomcat-users>
  <role rolename="manager-gui" />
  <role rolename="manager-script" />
  <user username="admin" password="meiyoumima" roles="manager-gui, manager-script"/>
</tomcat-users>

Tomcat URL:  这里配置好访问端口

部署后就可以访问了,部署前务必先启动Tomcat,否则Jenkins找不到部署目录(项目配置中,并没有明确配置Tomcat所在目录)。

Docker mysql镜像:

参考:

  https://www.cnblogs.com/jiangzhaowei/p/10989344.html

  创建kitking账户

//1. 登录阿里云
docker login --username=15900422108 registry.cn-hangzhou.aliyuncs.com

//2. 基于容器创建镜像
docker commit -a 'henry' -m 'kitking mysql' 0312a49b4c9d kitking-mysql:1.0

//3. TAG
docker tag c0c4cc516c2e  registry.cn-hangzhou.aliyuncs.com/kitking/kitking-mysql:1.0

//4. 推送到阿里云
docker push registry.cn-hangzhou.aliyuncs.com/kitking/kitking-mysql:1.0

DB迁移:

Navicat 数据库迁移:

1.将源数据库下的表迁移出来

        

2.将表全部迁入目标数据库

        

        

重新连接数据库

 IDEA在连接数据库时,

运行mysql时,提示Table ‘performance_schema.session_variables’ doesn’t exist

运行mysql时,提示Table ‘performance_schema.session_variables’ doesn’t exist

解决的方法是:

第一步:在管理员命令中输入:
//shell 命令行
mysql_upgrade -uroot -pxxx --force
service mysql restart

JAVA连接:

jdbc:mysql://xxx.com:3306/kksaas?characterEncoding=UTF-8&allowMultiQueries=true

Angular 前端部署:

  自由构建方式

check代码:

        

NodeJs构建、Nginx部署:

        

 

原文地址:https://www.cnblogs.com/jiangzhaowei/p/9505118.html