[SECIOTSRK-663] +Dockerization of services
authorm.dalakov <m.dalakov@samsung.com>
Thu, 2 Nov 2017 15:06:19 +0000 (17:06 +0200)
committerm.dalakov <m.dalakov@samsung.com>
Thu, 2 Nov 2017 15:14:28 +0000 (17:14 +0200)
22 files changed:
cloud/account/Dockerfile
cloud/account/src/main/java/org/iotivity/cloud/accountserver/AccountServer.java
cloud/messagequeue/Dockerfile
servers/alive/Dockerfile [new file with mode: 0644]
servers/alive/configuration/docker/application.properties [new file with mode: 0644]
servers/alive/configuration/docker/iotivity.properties [new file with mode: 0644]
servers/alive/configuration/docker/jdbc.properties [new file with mode: 0644]
servers/alive/configuration/docker/logback.xml [new file with mode: 0644]
servers/alive/lib/libconnectivity_abstraction.so [new file with mode: 0644]
servers/alive/lib/liboc.so [new file with mode: 0644]
servers/alive/lib/liboc_logger.so [new file with mode: 0644]
servers/alive/lib/liboc_logger_core.so [new file with mode: 0644]
servers/alive/lib/libocstack-jni.so [new file with mode: 0644]
servers/alive/lib/liboctbstack.so [new file with mode: 0644]
servers/alive/lib/libresource_directory.so [new file with mode: 0644]
servers/alive/pom.xml
servers/alive/src/main/java/com/samsung/alive/service/impl/CloudServiceImpl.java
servers/docker-compose.yml
servers/dsm/configuration/docker/dsm.properties
servers/dsm/src/main/resources/spring-security.xml
servers/mq/src/main/resources/root-context.xml
servers/pom.xml

index 16036e6..eaafaa3 100644 (file)
@@ -11,5 +11,9 @@ ENV TLS_MODE=0
 ENV MONGODB_ADDRESS=mongodb
 ENV MONGODB_PORT=27017
 
+ENV DSM_HOST=192.168.99.100
+ENV DSM_PORT=8080
+
+
 EXPOSE 5685
 ENTRYPOINT ["java", "-jar", "AccountServer.jar"]
index 54ed12e..87653fc 100644 (file)
@@ -121,6 +121,7 @@ public class AccountServer {
             databaseHost = System.getenv("MONGODB_ADDRESS") + ":"
                     + System.getenv("MONGODB_PORT");
             tlsMode = Integer.parseInt(tlsModeEnv) == 1;
+            dsmHost = System.getenv("DSM_HOST") + ":" + System.getenv("DSM_PORT");
             return true;
         }
         return false;
index c8943df..2af728a 100644 (file)
@@ -12,4 +12,7 @@ ENV KAFKA_ADDRESS kafka-zookeeper
 ENV KAFKA_PORT 9092
 
 EXPOSE 5686
+
+CMD sleep 10
+
 ENTRYPOINT ["java", "-jar", "MessageQueue.jar"]
\ No newline at end of file
diff --git a/servers/alive/Dockerfile b/servers/alive/Dockerfile
new file mode 100644 (file)
index 0000000..aac2a5a
--- /dev/null
@@ -0,0 +1,10 @@
+FROM openjdk:8-jre
+
+ADD ./target/alive-1.0.0-SNAPSHOT.jar servers/alive.jar
+ADD ./lib/*.* /usr/lib/
+
+WORKDIR servers/
+
+EXPOSE 8185
+
+CMD ldconfig && sleep 2 && java -jar alive.jar
\ No newline at end of file
diff --git a/servers/alive/configuration/docker/application.properties b/servers/alive/configuration/docker/application.properties
new file mode 100644 (file)
index 0000000..b70e845
--- /dev/null
@@ -0,0 +1,19 @@
+#Application port
+server.port=8185
+
+
+# DSM
+dsm.host=http://192.168.99.100:8080/dsm
+
+
+#Iotivity Cloud Service
+cloud.service.authprovider=Samsung
+cloud.service.host=coap+tcp://192.168.99.100:5683
+cloud.service.model=SecServerModel
+cloud.service.modelNameKey=dmv
+cloud.service.appName=SecServer
+cloud.service.appNameKey=n
+
+
+#JMX
+endpoints.jmx.enabled=false
\ No newline at end of file
diff --git a/servers/alive/configuration/docker/iotivity.properties b/servers/alive/configuration/docker/iotivity.properties
new file mode 100644 (file)
index 0000000..d2f0a38
--- /dev/null
@@ -0,0 +1,4 @@
+iotivity.listener_delay=500
+iotivity.kafka_host=kafka-zookeeper:9092
+iotivity.zookeper_host=kafka-zookeeper:2181
+
diff --git a/servers/alive/configuration/docker/jdbc.properties b/servers/alive/configuration/docker/jdbc.properties
new file mode 100644 (file)
index 0000000..246b241
--- /dev/null
@@ -0,0 +1,16 @@
+jdbc.driverClassName=org.postgresql.Driver
+jdbc.url=jdbc:postgresql://db:5432/secDB
+jdbc.username=postgres
+jdbc.password=postgres
+
+hibernate.dialect=org.hibernate.dialect.PostgreSQL82Dialect
+hibernate.show_sql=true
+hibernate.hbm2ddl.auto=update
+hibernate.hbm2ddl.import_files=sql/init.sql
+hibernate.temp.use_jdbc_metadata_defaults=false
+
+c3p0.acquireIncrement=1
+c3p0.minPoolSize=2
+c3p0.maxPoolSize=5
+c3p0.maxIdleTime=1
+
diff --git a/servers/alive/configuration/docker/logback.xml b/servers/alive/configuration/docker/logback.xml
new file mode 100644 (file)
index 0000000..c4a359f
--- /dev/null
@@ -0,0 +1,61 @@
+<configuration>
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+        <layout class="ch.qos.logback.classic.PatternLayout">
+            <Pattern>
+                [%d{yyyy-MM-dd HH:mm:ss}] [%-5p] [%t] %c{1}:[%L] - %m%n
+            </Pattern>
+        </layout>
+    </appender>
+
+    <appender name="FILE-ENGINE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>alive.log</file>
+        <encoder>
+            <Pattern>
+                [%d{yyyy-MM-dd HH:mm:ss}] [%-5p] [%t] %c{1}:[%L] - %m%n
+            </Pattern>
+        </encoder>
+
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>/tmp/servers/alive-%d{yyyy-MM-dd-HH-mm}.%i.log</fileNamePattern>
+            <maxFileSize>100MB</maxFileSize>
+            <totalSizeCap>1GB</totalSizeCap>
+        </rollingPolicy>
+    </appender>
+
+    <logger name="com.samsung" level="debug" additivity="false">
+        <appender-ref ref="STDOUT" />
+        <appender-ref ref="FILE-ENGINE" />
+    </logger>
+
+    <logger name="org.springframework" level="warn" additivity="false">
+        <appender-ref ref="STDOUT" />
+        <appender-ref ref="FILE-ENGINE" />
+    </logger>
+
+    <logger name="org.hibernate" level="warn" additivity="false">
+        <appender-ref ref="STDOUT" />
+        <appender-ref ref="FILE-ENGINE" />
+    </logger>
+
+    <logger name="kafka" level="warn" additivity="false">
+        <appender-ref ref="STDOUT" />
+        <appender-ref ref="FILE-ENGINE" />
+    </logger>
+
+    <logger name="org.apache.zookeeper" level="warn" additivity="false">
+        <appender-ref ref="STDOUT" />
+        <appender-ref ref="FILE-ENGINE" />
+    </logger>
+
+    <logger name="org.I0Itec.zkclient" level="warn" additivity="false">
+        <appender-ref ref="STDOUT" />
+        <appender-ref ref="FILE-ENGINE" />
+    </logger>
+
+    <root level="error">
+        <appender-ref ref="STDOUT" />
+        <appender-ref ref="FILE-ENGINE" />
+    </root>
+
+    <!-- <jmxConfigurator /> -->
+</configuration>
\ No newline at end of file
diff --git a/servers/alive/lib/libconnectivity_abstraction.so b/servers/alive/lib/libconnectivity_abstraction.so
new file mode 100644 (file)
index 0000000..e704e83
Binary files /dev/null and b/servers/alive/lib/libconnectivity_abstraction.so differ
diff --git a/servers/alive/lib/liboc.so b/servers/alive/lib/liboc.so
new file mode 100644 (file)
index 0000000..1e17847
Binary files /dev/null and b/servers/alive/lib/liboc.so differ
diff --git a/servers/alive/lib/liboc_logger.so b/servers/alive/lib/liboc_logger.so
new file mode 100644 (file)
index 0000000..bfc4359
Binary files /dev/null and b/servers/alive/lib/liboc_logger.so differ
diff --git a/servers/alive/lib/liboc_logger_core.so b/servers/alive/lib/liboc_logger_core.so
new file mode 100644 (file)
index 0000000..e889dba
Binary files /dev/null and b/servers/alive/lib/liboc_logger_core.so differ
diff --git a/servers/alive/lib/libocstack-jni.so b/servers/alive/lib/libocstack-jni.so
new file mode 100644 (file)
index 0000000..b14fcdc
Binary files /dev/null and b/servers/alive/lib/libocstack-jni.so differ
diff --git a/servers/alive/lib/liboctbstack.so b/servers/alive/lib/liboctbstack.so
new file mode 100644 (file)
index 0000000..69c04e6
Binary files /dev/null and b/servers/alive/lib/liboctbstack.so differ
diff --git a/servers/alive/lib/libresource_directory.so b/servers/alive/lib/libresource_directory.so
new file mode 100644 (file)
index 0000000..4b7bcb2
Binary files /dev/null and b/servers/alive/lib/libresource_directory.so differ
index 6a9e828..06e4a79 100644 (file)
                 </resources>
             </build>
         </profile>
+        <profile>
+            <id>docker</id>
+            <properties>
+                <type>docker</type>
+            </properties>
+            <build>
+                <resources>
+                    <resource>
+                        <directory>src/main/resources/</directory>
+                    </resource>
+                    <resource>
+                        <directory>configuration/docker/</directory>
+                    </resource>
+                </resources>
+            </build>
+        </profile>
     </profiles>
 
     <build>
index fd75f1f..67fbf0e 100644 (file)
@@ -116,7 +116,8 @@ public class CloudServiceImpl implements CloudService {
 
             @Override
             public void onPostFailed(Throwable throwable) {
-                log.error("Post failed.");
+                log.error(throwable.getMessage());
+                log.error(throwable.getStackTrace());
 
                 resultCallback.fail();
             }
index f1772c4..f2f054f 100644 (file)
@@ -7,9 +7,6 @@ services:
   kafka-zookeeper:
     #image: kafka:2.11-0.9
     image: kafka
-    environment:
-      KAFKA_ADVERTISED_HOST_NAME: 192.168.99.100
-      DOCKER_HOST: 172.18.0.1:2375
     ports:
       - "9092:9092"
       - "2181:2181"
@@ -45,3 +42,8 @@ services:
     image: mq
     ports:
       - "8888:8888"
+
+  alive:
+    image: alive
+    ports:
+      - "8185:8185"
index b75a1cb..b71ff3d 100644 (file)
@@ -1,2 +1,3 @@
 alive.api.password=111111
-alive.api.url = http://192.168.99.100:8185
+
+alive.api.url = http://alive:8185
index 83d0669..5488506 100644 (file)
         </security:headers>
     </security:http>
     <bean id="mqSender" class="com.samsung.dsm.rest.mq.MQSenderImpl">
-        <constructor-arg name="host" value="http://localhost:8888"/>
+        <constructor-arg name="host" value="http://mq:8888"/>
     </bean>
 </beans>
\ No newline at end of file
index 80b2a31..9af48ec 100644 (file)
@@ -17,7 +17,7 @@
     </bean>
 
     <bean id="mqSender" class="com.samsung.servermq.utils.rest.ServerSenderImpl">
-        <constructor-arg name="host" value="http://127.0.0.1:8080" />
+        <constructor-arg name="host" value="http://dsm:8080" />
     </bean>
 
     <import resource="iotivity.xml" />
index 51020cb..2c82f15 100644 (file)
@@ -16,6 +16,7 @@
         <module>commons</module>
         <module>dsm</module>
         <module>mq</module>
+        <module>alive</module>
     </modules>
 
     <properties>