summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkaixiliu <liukaixi@chinamobile.com>2024-06-17 10:00:26 +0800
committerkaixiliu <liukaixi@chinamobile.com>2024-06-17 10:00:43 +0800
commite80fb3bade9224fdf2c768a643f7d75a331bc683 (patch)
tree997d8ae42bf752e97ed91ecada9a9f68c85f58cb
parent8b1c6bb2a063b0c4294f8ea2a54420b28da5df4d (diff)
Add Dockerfile
Issue-ID: USECASEUI-838 Change-Id: I519549d1180cf8e72c8a4ecb5d7e4f7ef9d4a5bb Signed-off-by: kaixiliu <liukaixi@chinamobile.com>
-rw-r--r--llm-adaptation/pom.xml29
-rw-r--r--pom.xml1
-rw-r--r--standalone/pom.xml192
-rw-r--r--standalone/src/main/assembly/Dockerfile18
4 files changed, 239 insertions, 1 deletions
diff --git a/llm-adaptation/pom.xml b/llm-adaptation/pom.xml
index 8917255..74ff409 100644
--- a/llm-adaptation/pom.xml
+++ b/llm-adaptation/pom.xml
@@ -68,5 +68,32 @@
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
-
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ <version>3.0.11</version>
+ <configuration>
+ <executable>true</executable>
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>repackage</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.11.0</version>
+ <configuration>
+ <source>17</source>
+ <target>17</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
</project> \ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 5d7fd53..0a06ef9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -31,6 +31,7 @@
<packaging>pom</packaging>
<modules>
<module>llm-adaptation</module>
+ <module>standalone</module>
</modules>
<properties>
diff --git a/standalone/pom.xml b/standalone/pom.xml
new file mode 100644
index 0000000..0aae140
--- /dev/null
+++ b/standalone/pom.xml
@@ -0,0 +1,192 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.onap.usecase-ui.llm-adaptation</groupId>
+ <artifactId>usecase-ui-llm-adaptation-parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>standalone</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <properties>
+ <adaptation.version>1.0</adaptation.version>
+ <java.version>17</java.version>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+ <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
+ <linux64outputdir>target/assembly/linux64</linux64outputdir>
+ <dockeroutput>target/version/${adaptation.version}</dockeroutput>
+ </properties>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.onap.usecase-ui.llm-adaptation</groupId>
+ <artifactId>usecase-ui-llm-adaptation</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <build>
+ <finalName>usecse-ui-llm-adaptation</finalName>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copy-resources-linux64</id>
+ <phase>process-resources</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${linux64outputdir}</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/assembly/</directory>
+ <filtering>false</filtering>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ <excludes>
+ <exclude>Dockerfile</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <overwrite>true</overwrite>
+ </configuration>
+ </execution>
+ <execution>
+ <id>copy-dockerfile</id>
+ <phase>process-resources</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${dockeroutput}</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/assembly/</directory>
+ <filtering>false</filtering>
+ <includes>
+ <include>Dockerfile</include>
+ </includes>
+ </resource>
+ </resources>
+ <overwrite>true</overwrite>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.8</version>
+ <executions>
+ <execution>
+ <id>copy-jar-linux64</id>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <phase>prepare-package</phase>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>org.onap.usecase-ui.llm-adaptation</groupId>
+ <artifactId>usecase-ui-llm-adaptation</artifactId>
+ <type>jar</type>
+ <overWrite>true</overWrite>
+ <outputDirectory>${linux64outputdir}</outputDirectory>
+ <destFileName>usecase-ui-llm-adaptation.jar</destFileName>
+ </artifactItem>
+ </artifactItems>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.8</version>
+ <executions>
+ <execution>
+ <id>distribution</id>
+ <phase>package</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <tasks name="${project.artifactId}">
+ <tar destfile="${dockeroutput}/usecase-ui-llm-adaptation-${project.version}-linux64.tar.gz" longfile="posix" compression="gzip">
+ <tarfileset dir="${linux64outputdir}" filemode="0644" dirmode="0755">
+ <exclude name="**/*.sh"/>
+ </tarfileset>
+ <tarfileset dir="${linux64outputdir}" filemode="0755" dirmode="0755">
+ <include name="**/*.sh"/>
+ </tarfileset>
+ </tar>
+ <attachartifact file="${dockeroutput}/usecase-ui-llm-adaptation-${project.version}-linux64.tar.gz" classifier="linux64" type="tar.gz"/>
+ </tasks>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <profile>
+ <id>docker</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <version>0.16.5</version>
+ <inherited>false</inherited>
+ <configuration>
+ <images>
+ <image>
+ <name>onap/usecase-ui-llm-adaptation</name>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFileDir>${basedir}/${dockeroutput}</dockerFileDir>
+ <dockerFile>${basedir}/${dockeroutput}/Dockerfile</dockerFile>
+ <tags>
+ <tag>${adaptation.version}-SNAPSHOT-latest</tag>
+ <tag>${adaptation.version}-STAGING-latest</tag>
+ <tag>${adaptation.version}-STAGING-${maven.build.timestamp}</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ <executions>
+ <execution>
+ <id>generate-images</id>
+ <phase>package</phase>
+ <goals>
+ <goal>build</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>push-images</id>
+ <phase>deploy</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project> \ No newline at end of file
diff --git a/standalone/src/main/assembly/Dockerfile b/standalone/src/main/assembly/Dockerfile
new file mode 100644
index 0000000..bfd5ede
--- /dev/null
+++ b/standalone/src/main/assembly/Dockerfile
@@ -0,0 +1,18 @@
+FROM nexus3.onap.org:10001/onap/integration-java17:12.0.0
+
+USER root
+
+RUN mkdir /home/uui
+
+ADD usecase-ui-llm-adaptation-*-linux64.tar.gz /home/uui/
+
+WORKDIR /home/uui
+
+EXPOSE 8084
+
+RUN addgroup -S uui && adduser -S uui -G uui && chown -R uui:uui /home/uui
+
+USER uui
+WORKDIR /home/uui
+ENTRYPOINT ["sh", "-c"]
+CMD ["exec java -jar /home/uui/usecase-ui-llm-adaptation-linux64.jar"] \ No newline at end of file