Development with Docker

Install

apt install docker.io
usermod -aG docker patrick

Postgres

From Don’t install Postgres. Docker pull Postgres

Configure:

mkdir ~/repo/docker/postgres/volumes

sudo -i
service docker start

Run:

docker run --rm --name pg-docker -e POSTGRES_PASSWORD=postgres -d -p 5432:5432 -v $HOME/repo/docker/postgres/volumes:/var/lib/postgresql/data postgres

Test:

# the password is 'postgres'
psql -h localhost -U postgres -d postgres

Django:

# dev_local.py
DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.postgresql_psycopg2",
        "NAME": "dev_test_invoice",
        "USER": get_env_variable("DATABASE_USER"),
        "PASSWORD": get_env_variable("DATABASE_PASS"),
        "HOST": get_env_variable("DATABASE_HOST"),
        "PORT": "",
    }
}

# .env.fish
set -x DATABASE_HOST "localhost"
set -x DATABASE_PASS "docker"
set -x DATABASE_USER "postgres"