=====
- Docker
- git
- UW HPC account
- MCNP License - optional
- run
sudo apt-get install docker
- run
sudo groupadd docker
- run
sudo gpasswd -a $USER docker
- restart system
Note: Steps 2-4 will allow docker to be run without superuser privileges.
- run
sudo apt-get install git
Follow the instructions on the UW HPC website for creating an account. When requesting your account you must also request access to the frensie group. All frensie related software will be stored on the cluster at /home/group/frensie.
- create a working directory where the docker files will be built (e.g. software/uw-clone)
- move to
uw-clone
directory - clone the repository:
git clone https://github.com/FRENSIE/FRENSIE-Docker-UW-Cluster.git
- make a symbolic link to the new directory:
ln -s FRENSIE-Docker-UW-Cluster src
- make a build directory:
mkdir build
- move to the
build
directory:cd build
- make a copy of the
frensie-docker.sh
script in thebuild
directory:cp ../src/scripts/frensie-docker.sh .
- open the copy of the
frensie-docker.sh
script and- set the UW_CLUSTER_USER_NAME variable to the user name on the UW cluster
- set the UW_CLUSTER_USER_DIR variable to the user directory on the UW cluster (absolute path)
- configure the system to build:
./frensie-docker.sh ../src
to configure the Docker files - launch the build of FRENSIE in this environment:
make
(this may take a while as all of FRENSIE's software dependencies and FRENSIE will be built)
- move to the build directory
- run
make clean-docker-update
(quicker) or runmake clean-docker
(requires full rebuild of all images, which is slow) - run
make
Note: Skip these steps if the dependencies have already been installed on the UW HPC cluster.
- run
cd path-to-build/frensie-update
where path-to-build is the path to the FRENSIE-Docker-UW-Cluster build directory - run
./run-frensie-update.sh
to load the frensie-update image - run
cd /home/group/frensie/software
- run
tar -czvf frensie-deps.tar.gz
- run
scp frensie-deps.tar.gz UW_HPC_USER_NAME@ace-service-1.chtc.wisc.edu:/home/group/frensie/software/.
where UW_HPC_USER_NAME is the appropriate user HPC cluster user name - run
exit
- run
ssh -X UW_HPC_USER_NAME@ace-service-1.chtc.wisc.edu
where UW_HPC_USER_NAME is the appropriate user HPC cluster user name - run
cd /home/group/frensie/software/
- run
tar -xvf frensie-deps.tar.gz
- run
cd path-to-build/frensie-update
where path-to-build is the path to the FRENSIE-Docker-UW-Cluster build directory - run
./run-frensie-update.sh
to load the frensie-update image - run
cd UW_CLUSTER_USER_DIR
where UW_CLUSTER_USER_DIR is the appropriate UW cluster user directory - run
cd frensie_rel
orcd frensie_db
depending on whether FRENSIE was built for release or for debugging - run
tar -czvf frensie.tar.gz bin lib frensie-env.sh
- run
scp frensie.tar.gz UW_HPC_USER_NAME@ace-service-1.chtc.wisc.edu:UW_CLUSTER_USER_DIR/.
where UW_HPC_USER_NAME is the appropriate HPC cluster user name and UW_CLUSTER_USER_DIR is the appropriate UW cluster user directory - run
exit
- run
ssh -X UW_HPC_USER_NAME@ace-service-1.chtc.wisc.edu
where UW_HPC_USER_NAME is the appropriate user HPC cluster user name - run
cd UW_CLUSTER_USER_DIR
where UW_CLUSTER_USER_DIR is the appropriate UW cluster user directory - run
mkdir frensie_rel
ormkdir frensie_db
depending on whether FRENSIE was built for release or for debugging - run
mv frensie.tar.gz FRENSIE_DIR/.
where FRENSIE_DIR is either frensie_rel or frensie_db depnding on whether FRENSIE was built for release or for debugging - run
cd FRENSIE_DIR/.
where FRENSIE_DIR is either frensie_rel or frensie_db depnding on whether FRENSIE was built for release or for debugging - run
tar -xvf frensie.tar.gz
- add the following lines to your .bashrc file on the UW Cluster:
if [ -r $CRIMP_ENV ]
then
source UW_CLUSTER_USER_DIR/FRENSIE_DIR/frensie-env.sh
fi
where UW_CLUSTER_USER_DIR is the appropriate UW cluster user directory and FRENSIE_DIR is either frensie_rel or frensie_db depnding on whether FRENSIE was built for release or for debugging
docker images
: run to see which docker images that have been createddocker rmi -f image-id
: run to remove a docker image with id image-iddocker rmi -f repo:tag
: run to remove a docker image with alias repo:tag