Change default Docker location

By default, Docker will store its data in /var/lib/docker. Sometimes it’s needed to change this location. There are several ways to do it. The easiest is to create the following file: /etc/systemd/system/docker.service.d/docker-storage.conf [Service] ExecStart= ExecStart=/usr/bin/docker daemon -H fd:// –graph=”/home/docker” Then you just need to refresh systemctl, make sure your folder exists and restart docker: mkdir […]


Install Docker on Ubuntu/Debian

Install some prerequisites: apt-get update apt-get install apt-transport-https ca-certificates curl software-properties-common Add Docker’s official GPG key: curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add – Add the repository: add-apt-repository \ “deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable” Install Docker: apt-get update apt-get install docker-ce Try “docker info”, “docker version” or “docker ps -a” to check, […]


Cleanup old docker volumes and images

Remove old images: docker images -q –no-trunc –filter dangling=true | xargs –no-run-if-empty docker rmi -f Delete all dangling volumes: docker volume ls -qf dangling=true | xargs –no-run-if-empty docker volume rm On newer Docker versions: docker image prune docker volume prune Or clean all in one command: docker system prune


Installing Cobbler 2.6.11 on Ubuntu 16.04   Recently updated !

As it took me a bit to figure out, I'll quickly show in this tutorial how to install the latest version of Cobbler on Ubuntu. It may work in a quite similar way also on other linux distributions. First install the prerequisites: apt-get update apt-get install python python2.7 python-django python-netaddr python-yaml python-simplejson python-cheetah python-libvirt python-urlgrabber […]


Remove old kernels on RedHat, CentOS and Fedora   Recently updated !

Show installed kernels: rpm -q kernel On Fedora 22 and newer: dnf install yum-utils On earlier Fedora, CentOS and RedHat (RHEL): yum install yum-utils Run the actual cleanup, whereas 2 is in this case the number of kernels that you want to keep: package-cleanup –oldkernels –count=2


Getting replication lag in PostgreSQL   Recently updated !

Here a 2 simple queries to get the replication lag on Postgres servers: select now() – pg_last_xact_replay_timestamp() as lag; select pg_last_xlog_receive_location() receive, pg_last_xlog_replay_location() replay, ( extract(epoch FROM now()) – extract(epoch FROM pg_last_xact_replay_timestamp()) )::int lag;


Rsync using sudo over SSH   Recently updated !

If you can ssh to a remote server using your public key, but want rsync to be executed as a different user, you can achieve it like this: On the remote host add an entry in /etc/sudoers which looks like this (replace the username accordingly): user1 ALL=NOPASSWD: /usr/bin/rsync * This will allow your user account […]


Nginx Error 413 – Request entity too large   Recently updated !

If you get this error using Nginx, add this line in /etc/nginx/nginx.conf: http { …. client_max_body_size 50M; …. } And don't forget to restart nginx!


Testing if a server port is actually open   Recently updated !

There are actually a whole lot of possibilities to do that, the most simple one probably to use a simple telnet: telnet example.net 80 Or the good old nmap: nmap -sS -O -p80 example.net   In a Bash script you can simple do it this way: #!/bin/bash test=$(nc -z -v -w1 example.net 80 2>&1) if [[ $test == […]


Hide specific files and folders on ProFTPd   Recently updated !

Adding this to your proftpd configuration will hide files and folders starting with a dot which are hidden on linux anyway as well as shell scripts: <Directory /home/*> HideFiles (^\..*|\.sh$) <Limit ALL> IgnoreHidden On </Limit> </Directory>