xaizek / rocketgit (License: AGPLv3+) (since 2018-12-09)
Light and fast Git hosting solution suitable to serve both as a hub or as a personal code storage with its tickets, pull requests, API and much more.
<root> / root / themes / default / download-vm.html (ffc1fdcbf1183fc7f9af5408f9becf4b57f582ca) (7,956B) (mode 100644) [raw]
<div class="main_title">Download - virtual machines</div>

<div class="islands">

<div class="island_wide">
	<div class="island_title">RocketGit as a virtual machine</div>

	On this page you will find instructions on how to deploy
	RocketGit using a virtualization solution:<br />
	* <a href="#qemu">qemu/KVM/libvirt</a><br />
	* <a href="#vmware_esxi">VMware ESXi</a><br />
	* <a href="#vmware_player">VMware Player</a><br />
	* <a href="#virtualbox">VirtualBox</a><br />
	* <a href="#common">common section</a>
	</div>
</div>

<a name="qemu"></a>
<div class="island_wide">
	<div class="island_title">qemu based virtualization</div>

	Steps to follow:<br />
	* make sure libvirtd is started:<br />
	<div class="xcode">
		systemctl enable libvirtd<br />
		systemctl start libvirtd
	</div>
	<br />

	* download qemu image (~130 MiB):<br />
	<div class="xcode">
		wget -c -O /var/lib/libvirt/images/rocketgit1-master.qcow2.xz
		http://downloads.rocketgit.com/vm/last/rocketgit1.qcow2.xz
	</div>
	<br />

	* download libvirt vm description file (4 KiB):<br />
	<div class="xcode">
		wget -c -O /var/lib/libvirt/images/rocketgit.xml
		http://downloads.rocketgit.com/vm/last/rocketgit.xml
	</div>
	<br />

	* decompress qemu image:<br />
	<div class="xcode">
		cd /var/lib/libvirt/images/<br />
		xz -v -d rocketgit1-master.qcow2.xz
	</div>
	<br />

	* create a clone of the image to be able to start over or to make
	multiple instances:<br />
	<div class="xcode">
		qemu-img create -f qcow2 -b rocketgit1-master.qcow2 rocketgit1.qcow2
	</div>
	<br />

	* add the rocketgit1 virtual machine:<br />
	<div class="xcode">
		virsh define --file /var/lib/libvirt/images/rocketgit.xml
	</div>
	<br />

	* make it start at boot:<br />
	<div class="xcode">
		virsh autostart rocketgit1
	</div>
	<br />

	* now, you may want to change some virtual machine parameters using
	virt-manager or 'virsh edit rocketgit1' command; pay attention to
	the network definition<br />
	<br />

	* make sure no other virtualization system is running (like VirtualBox)<br />
	<br />

	* start the virtual machine:<br />
	<div class="xcode">
		virsh start rocketgit1
	</div>
	<br />

	* attach to the console to find out the ip address:<br />
	<div class="xcode">
		virsh console rocketgit1</br />
	</div>
	<br />

	* now, point your browser to the found ip address, using http or
	https and create an admin account<br />
	<br />

	If you want to create a new RocketGit instance, you can create a new
	image based on rocketgit1-master:
	<div class="xcode">
	cd /var/lib/libvirt/images/<br />
	qemu-img create -f qcow2 -b rocketgit1-master.qcow2 rocketgit2.qcow2<br />
	# edit rocketgit.xml and replace any reference of rocketgit1 to<br />
	# rocketgit2; leave alone the reference to rocketgit1-master.qcow2<br />
	virsh define --file rocketgit.xml<br />
	virsh edit rocketgit2<br />
	virsh autostart rocketgit2<br />
	virsh start rocketgit2<br />
	virsh console rocketgit2<br />
	</div>
	<br />

	Now, please follow the <a href="#common">common section</a> below to
	finish the installation.
</div>

<a name="vmware_esxi"></a>
<div class="island_wide">
	<div class="island_title">VMware ESXi based virtualization</div>

	Steps to follow:<br />

	* download VMX config file (2 KiB) from
	<a href="http://downloads.rocketgit.com/vm/rocketgit1-esx.vmx">http://downloads.rocketgit.com/vm/rocketgit1-esx.vmx</a><br />

	* download VMDK image (~200 MiB) from
	<a href="http://downloads.rocketgit.com/vm/last/rocketgit1.vmdk.zip">http://downloads.rocketgit.com/vm/last/rocketgit1.vmdk.zip</a>
	in the same folder as the previous file<br />

	* decompress the image and move both files to an ESX datastore<br />

	* in VMware Client, browse the datastore, right click on .vmx file,
	and choose "Add to inventory"<br />

	* now, you may want to change some virtual machine parameters;
	pay attention to the network definition<br />

	* start the virtual machine<br />

	* attach to the console to find out the ip address<br />

	* point your browser to the found ip address, using http or
	https and create an admin account<br />

	Now, please follow the <a href="#common">common section</a> below to
	finish the installation.
</div>

<a name="vmware_player"></a>
<div class="island_wide">
	<div class="island_title">VMware Player based virtualization</div>

	Steps to follow:<br />

	* if you do not have a VMware virtualization solution, go to
	<a href="http://www.vmware.com/player" target="_blank">VMware site</a>
	and download VMware Player. Choose try for free. It is around 75 MiB.
	And then, install it<br />

	* download VMX config file (2 KiB) from
	<a href="http://downloads.rocketgit.com/vm/rocketgit1.vmx">http://downloads.rocketgit.com/vm/rocketgit1.vmx</a><br />

	* download VMDK image (~200 MiB) from
	<a href="http://downloads.rocketgit.com/vm/last/rocketgit1.vmdk.zip">http://downloads.rocketgit.com/vm/last/rocketgit1.vmdk.zip</a><br />

	* decompress the image<br />

	* start VMware Player<br />

	* choose "Open a Virtual Machine", select the .vmx file and press
	"Open"<br />

	* now, you may want to change some virtual machine parameters;
	pay attention to the network definition<br />

	* start the virtual machine, using "Play virtual machine";
	choose "I copied it" if asked<br />

	* attach to the console to find out the ip address<br />

	* point your browser to the found ip address, using http or
	https and create an admin account<br />

	Now, please follow the <a href="#common">common section</a> below to
	finish the installation.
</div>

<a name="virtualbox"></a>
<div class="island_wide">
	<div class="island_title">Oracle's VirtualBox based virtualization</div>

	Steps to follow:<br />

	* if you do not have VirtualBox installed, go to
	<a href="https://www.virtualbox.org/wiki/Downloads" target="_blank">VirtualBox site</a>,
	download a proper executable (around 106 MiB) and install it<br />

	* download the OVF file (12 KiB) from
	<a href="http://downloads.rocketgit.com/vm/rocketgit1.ovf">http://downloads.rocketgit.com/vm/rocketgit1.ovf</a><br />

	* download the compressed VMDK image (~200 MiB) from
	<a href="http://downloads.rocketgit.com/vm/last/rocketgit1.vmdk.zip">http://downloads.rocketgit.com/vm/last/rocketgit1.vmdk.zip</a><br />

	* decompress the image<br />

	* start VirtualBox, choose "File" menu, then "Import Appliance...";
	select the .ovf file just downloaded and press "Next"<br />

	* you may want to change some virtual machine parameters and
	then press "Import"<br />

	* when asked about the license, choose "Agree"<br />

	* start the virtual machine by pressing "Start" button; login into the
	virtual machine to find out the ip address<br />

	* point your browser to the found ip address, using http or
	https and create an admin account<br />

	Now, please follow the <a href="#common">common section</a> below to
	finish the installation.
</div>

<a name="common"></a>
<div class="island_wide">
	<div class="island_title">Common section for all virtualization solutions</div>

	You must check the following list because you may want to:<br />
	* extend the disk space; maybe adding some swap space<br />
	* set the virtual machine to auto boot at host start<br />
	* add the VM in the distribution update plan<br />
	* run timedatectl set-timezone 'Continent/City' to set the timezone
	(needs a restart of some services or a reboot)<br />
	* change the root password: run 'passwd' (initial password is 'aaaa')<br />
	* allow this virtual machine to send mail (add it to the relay allow list)<br />
	* set a static IP address instead of DHCP<br />
	* add it to the DNS server to be able to access it by name<br />
	* generate new SSL/TLS certificates / keys<br />
	* customize /etc/rocketgit/config.php<br />
	* customize /etc/httpd_or_nginx/conf.d/rocketgit.conf<br />
	* login into RocketGit as admin and tweak settings in Admin -&gt; Settings<br />
	<br />
	Enjoy your new RocketGit instance!<br />
</div>

</div>
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/rocketgit

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/rocketgit

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master