To ensure a consistent environment for all users, this project uses a Conda environment defined in a requirements.yml
file. Follow these steps to set up your environment:
-
Install Conda: If you do not have Conda installed, download and install Miniconda or Anaconda.
-
Dependencies: You need to install
sudo apt-get install build-essentials build-essential libgdal-dev
. You need to match the libgdal version with gdal pip package version. -
Create the Conda Environment: Navigate to the root of the project directory and run the following command to create a new environment from the
requirements.yml
file:conda env create -f requirements.yml
-
Activate the Environment: Once the environment is created, activate it using:
conda activate drone_upscaling_env
-
Troubleshooting: If
ImportError: /home/bioeos/miniconda3/envs/drone_upscaling_env/bin/../lib/libstdc++.so.6: version 'GLIBCXX_3.4.30' not found (required by /lib/x86_64-linux-gnu/libgdal.so.34)
Use:
sudo find / -name libstdc++.so.6
to find your local file.
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
to check if the version 'GLIBCXX_3.4.32'
is present.
Then:
ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /home/bioeos/miniconda3/envs/drone_upscaling_env/lib/libstdc++.so
ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /home/bioeos/miniconda3/envs/drone_upscaling_env/lib/libstdc++.so.6
The goal of this docker image is to be a ready-made environment to easily run scripts.
Build command :
docker build -f Dockerfile -t drone-upscaling:latest .
Run command :
docker run --user 1000 --rm \
-v ./config/:/home/seatizen/app/config \
-v /mnt/disk_victorlebos/qgis_projects/2023_upscaling_drone/layers/:/home/seatizen/app/layers \
--name drone-upscaling drone-upscaling:latest -c --config_path ./config/config_stleu.json
module load singularity/3.6.4
singularity build -f drone_upscaling.sif docker://seatizendoi/drone-upscaling:latest
#!/bin/bash
#PBS -l select=1:ncpus=32:mem=40g
#PBS -l walltime=2:00:00
#PBS -N drone_upscaling
#PBS -q omp
#PBS -S /bin/bash
signal_handler() {
pkill --parent "${$}"
}
trap signal_handler EXIT
cd /home1/datahome/villien/PBS/drone_upscaling/
module load singularity/3.6.4
singularity run --pwd /home/seatizen/app/ \
--bind /home1/datahome/villien/PBS/drone_upscaling/config:/home/seatizen/app/config \
--bind /home1/datawork/villien/drone_upscaling_data:/home/seatizen/app/data \
drone_upscaling.sif -c --config_path ./config/config_stleu.json
qstat -f $PBS_JOBID