GitHub இல் உங்கள் மேவன் களஞ்சியம்
டெவலப்பர்கள் தங்கள் நூலகத்தை GitHub இல் பதிவேற்றலாம், அதற்காக இது ஒரு சிறப்பு தளம்-மேவன்-சொருகி சொருகி உள்ளது . அதன் பயன்பாட்டின் உதாரணத்தைப் பார்ப்போம்:
<project>
<properties>
<github.global.server>github</github.global.server>
<github.maven-plugin>0.9</github.maven-plugin>
</properties>
<distributionManagement>
<repository>
<id>internal.repo</id>
<name>Temporary Staging Repository</name>
<url>file://${project.build.directory}/mvn-repo</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.1</version>
<configuration>
<altDeploymentRepository>
internal.repo::default::file://${project.build.directory}/mvn-repo
</altDeploymentRepository>
</configuration>
</plugin>
<plugin>
<groupId>com.github.github</groupId>
<artifactId>site-maven-plugin</artifactId>
<version>${github.maven-plugin}</version>
<configuration>
<message>Maven artifacts for ${project.version}</message>
<noJekyll>true</noJekyll>
<outputDirectory>${project.build.directory}/mvn-repo</outputDirectory>
<branch>refs/heads/mvn-repo</branch>
<includes>**/*</includes>
<repositoryName>SuperLibrary</repositoryName>
<repositoryOwner>codegymu-student</repositoryOwner>
</configuration>
<executions>
<execution>
<goals>
<goal>site</goal>
</goals>
<phase>deploy</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
இங்கே என்ன எழுதப்பட்டுள்ளது என்று பார்ப்போம்.
தற்காலிக உள்ளூர் களஞ்சியத்தை உருவாக்குவது நீல நிறத்தில் சிறப்பிக்கப்படுகிறது. தொழில்நுட்ப ரீதியாக இது ஒரு கோப்புறை, ஆனால் அதை ஒரு தனி களஞ்சியமாக கருதுவதற்கு நமக்கு மேவன் தேவை.
maven-deploy-plugin plugin இன் துவக்கத்தை சிவப்பு நிறத்தில் முன்னிலைப்படுத்தினோம் , தொகுக்கப்பட்ட நூலகம் இந்த தற்காலிக களஞ்சியத்தில் வைக்கப்பட வேண்டும் என்று நாங்கள் குறிப்பிட்டோம்.
இறுதியாக, site-maven-plugin plugin is highlighted in green , இது அனைத்து கோப்புகளையும் களஞ்சியத்தில் இருந்து எடுத்து அவற்றை GitHub இல் ஒப்படைக்க வேண்டும். இங்கே சில விளக்கம் தேவை. அனைத்து அளவுருக்கள் இரண்டு குழுக்களாக பிரிக்கப்பட்டுள்ளன: எதை நிரப்புவது மற்றும் எங்கு நிரப்புவது.
நாம் என்ன நிரப்புகிறோம்:- அவுட்புட் டைரக்டரி - கமிட் செய்வதற்கான கோப்புகளைப் பெறுவதற்கான அடைவு
- உள்ளடக்கியது - செய்ய வேண்டிய கோப்புகளின் முகமூடியை அமைக்கிறது
- repositoryOwner - கிட்ஹப்பில் களஞ்சிய உரிமையாளரின் பெயர்
- களஞ்சியப் பெயர் - களஞ்சியப் பெயர்
- கிளை - கிட்ஹப்பில் உள்ள களஞ்சியக் கிளையை அமைக்கிறது
- செய்தி - செய்யும்போது சேர்க்கப்படும் செய்தி
Maven setting.xml இல் உங்கள் களஞ்சியத்திற்கான உள்நுழைவு மற்றும் கடவுச்சொல்லையும் குறிப்பிட வேண்டும் :
<settings>
<servers>
<server>
<id>github</id>
<username>[username]</username>
<password>[password]</password>
</server>
</servers>
</settings>
GitHub களஞ்சியத்திலிருந்து மற்றொரு திட்டத்திற்கு நூலகத்தை இணைக்க (பயன்படுத்த), உங்கள் pom.xml இல் இந்தக் களஞ்சியத்தைக் குறிப்பிட வேண்டும் :
<repositories>
<repository>
<id>[name-project]-mvn-repo</id>
<url>https://raw.github.com/[username]/[name-project]/mvn-repo/</url>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
அதன் பிறகு, நூலகத்தை எங்கிருந்து பெறுவது என்று மாவனுக்குப் புரியும்.
- [name-project] என்பது திட்டத்தின் பெயர், எங்கள் விஷயத்தில் SuperLibrary
- [பயனர்பெயர்] என்பது GitHub இல் உள்ள உள்நுழைவு, உதாரணத்தில் இது codegym-user
அசெம்பிளியை டோக்கர் படமாக பேக் செய்தல்
நாங்கள் ஒரு புதிய காலத்தில் வாழ்கிறோம், அசெம்பிளியின் விளைவாக திட்டங்கள் மேவன் களஞ்சியத்தில் அல்லது டோக்கர் சேமிப்பகத்தில் வைக்கப்படலாம்.
மேவன் மற்றும் டோக்கரை நண்பர்களாக்க, எங்களுக்கு docker-maven-plugin plugin தேவை . சிக்கலான எதுவும் இல்லை:
<build>
<plugins>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.10</version>
<configuration>
<dockerDirectory>${project.basedir}</dockerDirectory>
<imageName>codegym/${project.artifactId}</imageName>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
நீல நிறத்தில் ஹைலைட் செய்யப்பட்டிருப்பது, கட்டத்தின் பேக்கேஜ் கட்டத்தில் கோல் புல்லிடைச் சேர்த்த புள்ளியாகும். இதை mvn docker:build கட்டளை மூலம் அழைக்கலாம் .
DockerDirectory டேக், Dockerfile அமைந்துள்ள கோப்புறையைக் குறிப்பிடுகிறது. மேலும் படத்தின் பெயர் imageName குறிச்சொல்லைப் பயன்படுத்தி அமைக்கப்பட்டுள்ளது .
திட்டம் ஒரு ஜார் கோப்பில் தொகுக்கப்பட்டிருந்தால், டோக்கர் கோப்பு இப்படி இருக்கும்:
FROM java:11
EXPOSE 8080
ADD /target/demo.jar demo.jar
ENTRYPOINT ["java","-jar","demo.jar"]
நீங்கள் ஒரு இணைய பயன்பாட்டை பேக்கேஜிங் செய்கிறீர்கள் என்றால், நீங்கள் Tomcat ஐச் சேர்க்க வேண்டியிருக்கும்:
FROM tomcat8
ADD sample.war ${CATALINA_HOME}/webapps/ROOT.war
CMD ${CATALINA_HOME}/bin/catalina.sh run