From 3aa19b051ed70ec3feb7f55a277e653f151186b9 Mon Sep 17 00:00:00 2001 From: David Beniamine <david.beniamine@tetras-libre.fr> Date: Mon, 24 Mar 2025 11:16:55 +0100 Subject: [PATCH] Add several applications --- .env.sample | 2 ++ docker-compose.yml | 4 +++- docker/kasm/Dockerfile | 39 +++++++++++++++++++++++++++++++++------ 3 files changed, 38 insertions(+), 7 deletions(-) diff --git a/.env.sample b/.env.sample index c42984e..cbecb63 100644 --- a/.env.sample +++ b/.env.sample @@ -19,3 +19,5 @@ PORT=6901 SPYDER=true # Install anaconda (distribution platform for Python and R) ANACONDA=true +# Install QGIS +QGIS=true diff --git a/docker-compose.yml b/docker-compose.yml index fe7e2b7..f56423c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -13,9 +13,11 @@ services: target: kasmvnc-base args: - SPYDER=${SPYDER} + - QGIS=${QGIS} - ANACONDA=${ANACONDA} - KASM_USER=${VNC_USER} - image: "kasmvnc-ubuntu-noble:spyder-${SPYDER}_anaconda-${ANACONDA}" + image: "kasmvnc-ubuntu-noble:spyder-${SPYDER}_anaconda-${ANACONDA}_QGIS-${QGIS}" + shm_size: '512m' volumes: - homedir:/home/:rw environment: diff --git a/docker/kasm/Dockerfile b/docker/kasm/Dockerfile index 69bcf17..7680ec0 100644 --- a/docker/kasm/Dockerfile +++ b/docker/kasm/Dockerfile @@ -9,6 +9,7 @@ WORKDIR $HOME ######### Customize Container Here ########### ARG SPYDER +ARG QGIS ARG ANACONDA ARG ANACONDA_VERS=Anaconda3-2024.02-1 ARG KASM_USER @@ -16,17 +17,29 @@ ARG KASM_USER COPY firefox-deb-nosnap /etc/apt/preferences.d/firefox-deb-nosnap -RUN sudo add-apt-repository ppa:mozillateam/ppa -RUN apt-get update && \ +RUN sudo add-apt-repository ppa:mozillateam/ppa && \ + apt-get update && \ apt-get purge -y language-pack-* && \ apt-get -y dist-upgrade && \ apt-get install -y \ + autoconf \ + build-essential \ + evince \ firefox \ + gedit \ + git \ + git-cola \ + gnupg \ + htop \ inotify-tools \ + language-pack-en \ + language-pack-en-base \ language-pack-fr \ language-pack-fr-base \ - language-pack-en \ - language-pack-en-base && \ + libreoffice \ + software-properties-common \ + vim-nox \ + wget && \ locale-gen --purge fr_FR.UTF-8 en_US.UTF-8 RUN mkdir /install @@ -35,6 +48,11 @@ RUN usermod -l $KASM_USER kasm-user; \ for f in /dockerstartup/*.sh; do sed -i -e "s/kasm_user/$KASM_USER/g" $f; done WORKDIR /install + +RUN wget https://dbeaver.io/files/dbeaver-ce_latest_amd64.deb && \ + dpkg -i dbeaver-ce_latest_amd64.deb && \ + rm dbeaver-ce_latest_amd64.deb + # === Install Spyder === # RUN if [ "$SPYDER" = true ] ; then apt-get install -y python3-spyder; fi @@ -44,9 +62,18 @@ RUN if [ "$ANACONDA" = true ] ; then \ wget https://repo.anaconda.com/archive/${ANACONDA_VERS}-Linux-x86_64.sh; \ bash ${ANACONDA_VERS}-Linux-x86_64.sh -b; \ chmod u+x $HOME/anaconda3/etc/profile.d/conda.sh; \ - echo "source ~/anaconda3/etc/profile.d/conda.sh" >> /home/kasm-default-profile/.bashrc; \ - echo "conda activate" >> /home/kasm-default-profile/.bashrc; \ + echo "source ~/anaconda3/etc/profile.d/conda.sh" >> /home/kasm-user/.bashrc; \ + echo "conda activate" >> /home/kasm-user/.bashrc; \ rm -rf $HOME/.cache; \ + rm ${ANACONDA_VERS}-Linux-x86_64.sh; \ + fi + +# === Install QGIS === # +RUN if [ "$QGIS" = true ] ; then \ + wget -O /etc/apt/keyrings/qgis-archive-keyring.gpg https://download.qgis.org/downloads/qgis-archive-keyring.gpg; \ + echo "Types: deb deb-src\nURIs: https://qgis.org/debian\nSuites: $(lsb_release -cs)\nArchitectures: amd64\nComponents: main\nSigned-By: /etc/apt/keyrings/qgis-archive-keyring.gpg" > /etc/apt/sources.list.d/qgis.sources; \ + apt-get update; \ + apt-get -y install qgis qgis-plugin-grass; \ fi COPY custom_startup.sh $STARTUPDIR/custom_startup.sh -- GitLab