Go to file
2022-04-23 15:47:46 +02:00
.github/workflows Add Publish DockerHub image action 2021-10-16 13:28:24 +02:00
bin Bash Add line to /etc/locale.gen instead of writing file 2019-09-23 15:38:15 +02:00
conf Update config.inc.php 2020-11-25 15:21:11 +01:00
docker-compose.yml Update docker commands 2022-03-07 21:35:51 +01:00
Dockerfile Version 8.9.4 update 2022-04-23 15:47:46 +02:00
LICENSE Version 8.2.1 update 2021-10-16 14:01:53 +02:00
README.md Add sudo before the docker command, move to note 2022-03-08 10:30:29 +01:00

Docker RosarioSIS

A Dockerfile that installs the latest RosarioSIS. This file pulls from the default branch, but can be easily modified to pull from any other available branch or tagged release.

Installation

Minimum requirements: Docker & Git working.

You can pull the image from DockerHub or:

git clone https://gitlab.com/francoisjacquet/docker-rosariosis.git
cd docker-rosariosis
docker build -t rosariosis .

Usage

RosarioSIS uses a PostgreSQL database:

docker run --name rosariosisdb -e "POSTGRES_PASSWORD=postgrespwd" -d postgres

Create database:

docker exec -it rosariosisdb bash
psql -h localhost -p 5432 -U postgres
postgres=# CREATE USER rosario WITH PASSWORD 'rosariopwd';
postgres=# CREATE DATABASE rosariosis WITH ENCODING 'UTF8' OWNER rosario;
postgres=# \q
exit

Run RosarioSIS (DockerHub image) and link the PostgreSQL container:

docker run -e "ROSARIOSIS_ADMIN_EMAIL=admin@example.com" -e "PGHOST=rosariosisdb" -h `hostname -f` -d -p 80:80 --name rosariosis --link rosariosisdb:rosariosisdb rosariosis/rosariosis:master

Port 80 will be exposed, so you can visit http://localhost/InstallDatabase.php to get started. Default username and password: admin.

Note: a docker-compose.yml file is available.

Note 2: you may have to add sudo before the docker command.

Environment Variables

The RosarioSIS image uses several environment variables which are easy to miss. While none of the variables are required, they may significantly aid you in using the image.

PGHOST

Host of the postgres database.

PGUSER

This optional environment variable is used in conjunction with PGPASSWORD to set a user and its password for the database.

PGPASSWORD

This optional environment variable is used in conjunction with PGUSER to set a user and its password for the database.

PGDATABASE

This optional environment variable can be used to define a different name for the database.

PGPORT

This optional environment variable can be used to define a different port for the database.

ROSARIOSIS_YEAR

This optional environment variable can be used to define the default school year in RosarioSIS settings.

ROSARIOSIS_ADMIN_EMAIL

This optional environment variable can be used to define an email address where to send error and new administrator notifications.

ROSARIOSIS_LANG

This optional environment variable is for RosarioSIS to show another language.

Values are fr_FR for French and es_ES for Spanish.

You must also generate the fr_FR.utf8 (for example) locale. To do so run these commands:

sudo docker exec -it rosariosis bash
dpkg-reconfigure locales

ROSARIOSIS_VERSION

This optional environment variable is used to set the required version of RosarioSIS.

SMTP

RosarioSIS will attempt to send mail via the host's port 25. In order for this to work you must set the hostname of the rosariosis container to that of host (or some other hostname that can appear on a legal FROM line) and configure the host to accept SMTP from the container. For postfix this means adding the container IP addresses to /etc/postfix/main.cf as in:

mynetworks = 192.168.0.0/16 172.16.0.0/12 10.0.0.0/8 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128

Note: alternatively, you can use the Email SMTP plugin for RosarioSIS.