Skip to content

Server provisioning

Andrey Maximov edited this page Jun 1, 2021 · 5 revisions

Installation

Prerequisites

  1. An Ubuntu 20.04 (LTS) server with root access
  2. A domain name resolved to the server's IP-address

Provisioning

Login to your server as root and execute the following commands line-by-line.

asciicast

  1. Get the provisioning script and execute it:
# This will create a new user `vyva` and the SSH key if run as root.
bash <(wget -qO- https://raw.githubusercontent.com/fivejars/vyva/master/provision.sh)

The user will be used to run all further commands.

Jenkins will use that user to execute all its jobs.

The key will be needed when Jenkins Worker will be configured.

  1. Docker installation
# When you are asked to switch to user 'vyva' do the following:
su - vyva
# As vyva, execute the provisioning script once again.
bash <(wget -qO- https://raw.githubusercontent.com/fivejars/vyva/master/provision.sh)
# Re-login when you are asked and execute the script again.
exit
su - vyva
  1. Nginx, SSL, Jenkins, Puppeteer installation and provisioning.
bash <(wget -qO- https://raw.githubusercontent.com/fivejars/vyva/master/provision.sh)

During this phase you'll be asked to input the domain name and your email.

The domain is needed to properly point web-server and let the Let's Encrypt generate a free SSL certificate.

The email is needed for notifications in case of issues or changes with the generated certificate.

At the end of the script execution, you'll be provided with the Administrator Password and the link to the service.

Initial configuration

  1. Navigate to the service using the link.

Unlock Jenkins

Input the password and submit the form.

  1. You're asked to install Jenkins plugins, select "Select plugins to install"

Customize Jenkins

  1. Click on the "None" link above the listing and click on the Install button at the bottom of the page.

Customize Jenkins

  1. You're asked to Create the admin user. Fillout the form and submit it.

Create First Admin User

  1. You're asked to input Jenkins URL. Verify it has been detected proprely and submit the form.

Jenkins URL

  1. You're hitting the "Jenkins is ready!' page. Click on the 'Start using Jenkins' button.

Jenkins is ready!

  1. You are redirected to the dashboard that lists the provisioned jobs. In the sidebar on the left, click on the "Manage Jenkins"

Jenkins dashboard

  1. Find the Manage Credentials tile and click on it.

Manage Jenkins

  1. Find the Credentials table with one data row. The cell of the "Name" column should say "vyva". Hover over "vyva", click on the chevron, click on the "Update" link from the dropdown list.

Manage Credentials

  1. On the form, find the 'Private Key' section. The key is "Concealed for Confidentiality". You have to update the key.

Manage Credentials Form

Click on the "Replace" button, the text form will appear. You have to copy the contents of the file that was created during the server provisioning.

  1. Use the following command while logged in as root:
cat /root/.ssh/id_rsa

Select and copy the contents and past it to the key field in the form. Hit 'Save'.

  1. On the dashboard, click on the "Worker" link in the list of exectors in the sidebar.

Dashboard

  1. You are taken to the Agent Worker page. The agent is offline yet. Click on the "Launch Agent" button.

Launch Agent

  1. The log of the agent launch will start appearing. You should get "Agent successfully connected and online" if everything is alright.

Agent Connected


At this point, your conversion tool server is almost ready to receive commands from Virtual Y websites.

Once you finished this basic Jenkins configuration proceed to https://github.com/fivejars/vyva/wiki/Drupal-module-installation-and-configuration