J. Correia Lopes

FEUP/DEI & INESC TEC

User Tools

Site Tools


teach:lbaw:tools

Computational resources

Master in Informatics and Computing Engineering
Database and Web Applications Laboratory
Instance: 2018/2019


This page describes the computational resources required for the development of the project.

1. Version Control with Git

Git is the version control system to be used during LBAW. The group (GG) repository is: https://git.fe.up.pt/lbaw/lbaw18/lbaw18GG. The teacher adds you to the repository in the first class.

Make sure you login in https://git.fe.up.pt/ before the first class, so that your account is created in the system.

The repository's README file must include:

  • Group reference (lbaw18GG)
  • Project theme (e.g. "1. Collaborative news")
  • List of team members, including names and email addresses

The group must ensure that the repository remains private, visible only by the team members and the teacher.

Git Documentation | Git User Manual | A tutorial introduction to Git

2. User Interfaces Prototype

The User Interface Prototype (PIU) is composed by a subset of the user interfaces the group have to develop for the project. The pages are static HTML pages which use the Bootstrap framework.

The group starts the PIU by copying the files available at the template repository (https://git.fe.up.pt/lbaw/template-piu) to his own repository, and then follow the instructions, detailed in the README, to setup the technologies needed for the development.

The PIU uses the NGINX HTTP server. A local instance is created inside the Docker container using the bundled Dockerfile (see the README for the required steps).

Once the PIU HTML pages are developed, the group builds and uploads a Docker image (lbaw18GG-piu) to the group Docker hub repository (see the README for the required steps).

Using the FEUP VPN, the project will be available at http://lbaw18GG-piu.lbaw-prod.fe.up.pt. Be aware that these interfaces need to be available for evaluation. Otherwise, the group won't be graded in that component.

NGINX Beginner’s Guide | Docker documentation | Overview of Docker Hub

3. PostgreSQL

PostgreSQL is the RDBM adopted in the course.

A production environment of PostgreSQL is provided in the machine dbm.fe.up.pt, which is used in the application's production version. Each group (GG) will be provided with a PostgreSQL user account lbaw18GG, with the group password, and a database lbaw18GG available on the production machine (dbm.fe.up.pt) inside the FEUP VPN.

PostgreSQL 9.4 Manual | pgAdmin

4. Development environment: Docker, Laravel, PostgreSQL

The group develops a web application using the Laravel server framework.

The group starts the project by copying the files available at the template repository (https://git.fe.up.pt/lbaw/template-lbaw) to his own repository, and then follow the instructions, detailed in the README, to setup the technologies needed for the development.

The project uses the database management system PostgreSQL version 9.4. A local instance is created using the bundled Docker compose file (see the README for the required steps).

Whenever an increment to the project is made, the group builds and uploads a new Docker image (lbaw18GG) to the group Docker Hub repository (see the README for the required steps).

Laravel documentation

5. Production Environment

The group should follow the instructions in the README file to keep the project up to date on their production environment.

The production environment is updated every 60 minutes.

The project will be available, inside FEUP's network or using the FEUP VPN, at http://lbaw18GG.lbaw-prod.fe.up.pt.

6. Helpful tools

teach/lbaw/tools.txt · Last modified: 05/04/2019 08:41 by Correia Lopes