Skip to content

Commit

Permalink
[docs] update setup instructions for Ubuntu (#873)
Browse files Browse the repository at this point in the history
  • Loading branch information
Drumor committed Nov 3, 2022
1 parent 0959be6 commit 7e6a664
Showing 1 changed file with 77 additions and 18 deletions.
95 changes: 77 additions & 18 deletions doc/admin_doc/install_doc/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ The previously mentioned dependencies can be installed, for Cent OS 7+ :
.. code-block:: bash
# yum install -y epel-release
# yum install -y git gcc libtidy python38 python38-devel python38-pip zeromq-devel yum-utils
# yum install -y git gcc libtidy python38 python38-devel python38-pip python3-venv zeromq-devel yum-utils
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# yum install -y docker-ce docker-ce-cli
# cat <<EOF > /etc/yum.repos.d/mongodb-org-4.4.repo
Expand All @@ -54,7 +54,7 @@ Or, for Fedora 32+:

.. code-block:: bash
# yum install -y git gcc libtidy python3 python3-devel python3-pip zeromq-devel dnf-plugins-core
# yum install -y git gcc libtidy python3 python3-devel python3-pip python3-venv zeromq-devel dnf-plugins-core
# dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
# dnf install -y docker-ce docker-ce-cli
# cat <<EOF > /etc/yum.repos.d/mongodb-org-4.4.repo
Expand All @@ -77,30 +77,59 @@ You can now start and enable the ``mongod`` and ``docker`` services:
# systemctl start docker
# systemctl enable docker
Ubuntu 18.04+
Ubuntu 22.04+
`````````````

The previously mentioned dependencies can be installed, for Ubuntu 18.04+:

The previously mentioned dependencies can be installed, for Ubuntu 22.04+:

As previously said, INGInious needs some specific packages. Those can simply be add by running this command:

.. code-block:: bash
sudo apt install git gcc tidy python3-pip python3-dev python3-venv libzmq3-dev apt-transport-https
For Docker and MongoDB, some specific steps are needed:

First, Docker:

.. code-block:: bash
# apt-get update
# apt-get install git gcc tidy python3 python3-pip python3-dev libzmq3-dev mongodb apt-transport-https curl gnupg lsb-release
# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
# apt-get update
# apt-get install docker-ce docker-ce-cli
sudo apt install curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli
Then, Mongo:

.. code-block:: bash
You may also add ``libxmlsec1-dev libltdl-dev`` for the SAML2 auth plugin
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
sudo apt update
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb
sudo apt install -y mongodb-org
.. NOTE::

Libssl installation is a temporary fix that is not required for all versions.
It may not work anymore (or may not be necessary) for future versions.

You may also add ``libxmlsec1-dev libltdl-dev`` for the SAML2 auth plugin.

You can now start and enable the ``mongod`` and ``docker`` services:
::

# systemctl start mongodb
# systemctl enable mongodb
# systemctl daemon-reload
# systemctl start mongod
# systemctl enable mongod
# systemctl start docker
# systemctl enable docker



macOS
`````

Expand All @@ -124,16 +153,46 @@ The next step is to install `Docker for Mac <https://docs.docker.com/docker-for-

.. _Installpip:

**Whatever the distribution, you should make docker available for non-root user:**

1. Run the ``groupadd`` command below to create a new group called ``docker``. Enter your password to continue running the command.

.. code-block:: bash
sudo groupadd docker
If the ``docker`` group exists in the user group, you will get a message like "group already exists".

2. Next, run the ``usermod`` command below where the ``-aG`` options tell the command to add the INGInious running user ``<user>`` to the ``docker`` group.
This command causes your user account to have non-user access.

.. code-block:: bash
sudo usermod -aG docker user
3. Run the ``newgrp`` command below to change the current real group ID to the ``docker`` group.

.. code-block:: bash
sudo newgrp docker
Installing INGInious
--------------------

The recommended setup is to install INGInious via pip and the master branch of the INGInious git repository.
This allows you to use the latest development version. This version is currently the supported one for issues.
To keep a clean distribution, we recommend to work with a virtualenv:

.. code-block:: bash
python3 -m venv /path/to/venv/INGInious
source /path/to/venv/INGInious/bin/activate
The recommended setup is to install INGInious via pip.
This allows you to use the latest released version. This version is currently the supported one for issues.

::

$ pip3 install --upgrade git+https://github.com/UCL-INGI/INGInious.git@inginious-0.7
$ pip install INGInious

This will automatically upgrade an existing version.

.. note::

Expand All @@ -142,7 +201,7 @@ This will automatically upgrade an existing version.

::

$ pip3 install --upgrade git+https://github.com/UCL-INGI/INGInious.git@inginious-0.7#egg=INGInious[cgi,ldap]
$ pip install INGInious[cgi,ldap]

.. _config:

Expand Down

0 comments on commit 7e6a664

Please sign in to comment.