I found Docker super useful, but going through a manual is quite time consuming. Here, very stripped manual to create your first image and push it online 🙂
# install docker wget -qO- https://get.docker.com/ | sh # add your user to docker group sudo usermod -aG docker $USER # check if it's working docker run docker/whalesay cowsay "hello world!" # create an account on https://hub.docker.com # and login docker login -u $USER --email=EMAIL # run image docker run -it ubuntu # make some changes ie. create user, install needed software etc # finally open new terminal & commit changes (SESSIONID=HOSTNAME) docker commit SESSIONID $USER/image:version # mount local directory `pwd`/test as /test in read/write mode docker run -it -v `pwd`/test:/test:rw $USER/image:version some command with arguments # push image docker push $USER/image:version
From now, you can get your image from any other machine connected to Internet by executing:
docker run -it $USER/image:version # ie. redundans image docker run -it -w /root/src/redundans lpryszcz/redundans:v0.11b ./redundans.py -v -i test/{600,5000}_{1,2}.fq.gz -f test/contigs.fa -o test/run1 # you can create alias latest, then version can be skipped on running docker tag lpryszcz/redundans:v0.11b lpryszcz/redundans:latest docker push lpryszcz/redundans:latest docker run -it lpryszcz/redundans
You can add info about your repository at https://hub.docker.com/r/$USER/image/