‘uname -a’ gives you some useful info about kernel version, but if you’re looking for the specific version of Ubuntu that you have installed, try ‘cat /etc/issue’ which should include a line with the exact Ubuntu version.
Expanding virtual disk size for a Fedora guest on VirtualBox
First, while the virtual machine is down, resize the disk image:
vboxmanage modifyhd vdi_disk_image_name.vdi --resize new_size_in_mb
Now boot the image and logon. If you’re not using LVM, I think to resize regular partitions it’s as simple as starting gparted, and then just drag the size of the partition to take up the new unformatted space. If you are using LVM, then do the following:
sudo lvm
List physical volumes with pvs, find the one containing the logical volume that you want to resize, and then use pvresize:
pvresize --setphysicalvolumesize xxG /dev/name
To show volume groups:
vgs
To show logical volumes:
lvs
To expand a logical volume to use the newly added space:
lvextend -L +sizeG vg_groupname/lv_volumename
where size is the new size in GB.
In a Nutshell: Deploying a Java webapp to Red Hat’s OpenShift
Deploying a Java webapp to OpenShift couldn’t be any simpler. In as few words as possible to show you how simple it is – here’s a quickstart:
- Follow the Quickstart setup guide here: https://openshift.redhat.com/app/express#quickstart
- Develop your app
- git add .
- git commit -m “commit message”
- git push
… and that’s it. Your app is pushed to your remote Git repo, built with Maven, and deployed to JBoss 7.
That’s pretty simple, huh?
In a Nutshell: Deploying a Java webapp to Heroku
This post walks you through getting started with Heroku and deploying a simple Spring MVC web app.
- Follow the Getting Started guide to get your Heroku Toolbelt setup
- Login to Heroku from the commandline with ‘heroku login’
- Since Heroku does not provide it’s own app server, you configure your pom.xml to pull in a dependency on a container, like Jetty (this is from the Getting Started with Spring MVC guide)
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>2.3</version> <executions> <execution> <phase>package</phase> <goals><goal>copy</goal></goals> <configuration> <artifactItems> <artifactItem> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-runner</artifactId> <version>7.4.5.v20110725</version> <destFileName>jetty-runner.jar</destFileName> </artifactItem> </artifactItems> </configuration> </execution> </executions> </plugin>
The Heroku Getting Started with Java instructions give some steps on how to run your app locally by running Java from the command line and passing a classpath pointing to your target dir, but this seems odd since Jetty is able to run from Mavan against your created war file or even the code compiled to your target dir using the ‘mvn jetty:run’ command. Add the following to the above <plugins> section to enable and use this approach instead:
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
</plugin>
- Heroku uses a file named ‘Procfile’ in the root of your project to tell Heroku how to run your code. Add this file, and inside it add this one line
web: java $JAVA_OPTS -jar target/dependency/jetty-runner.jar --port $PORT target/*.war
- Create your new app on Heroku with ‘heroku create –stack cedar’
- Add and commit your code if you haven’t already, then push to your heroku remote git:
git add . git commit -m "commit comment" git push heroku master
At this point Heroku should build you app remotely and start it up.
If you see this error about the jetty-runner.jar missing, then you forgot to add the plugin part to your pom.xml to copy the jetty jar to the target/dependency dir:
Unable to access jarfile target/dependency/jetty-runner.jar