Commit fc53f1d1 authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Initial commit

parents
Loading
Loading
Loading
Loading
Loading

.gitignore

0 → 100644
+1 −0
Original line number Diff line number Diff line
.idea/

.gitlab-ci.yml

0 → 100644
+13 −0
Original line number Diff line number Diff line
before_script:
  - docker info

stages:
  - build

build:
  stage: build
  script:
    - export HTTP_PROXY=http://10.14.128.99:3128
    - docker build --rm --build-arg HTTP_PROXY=${HTTP_PROXY} -f Dockerfile -t sygal-db-image .
    - docker tag sygal-db-image registre.unicaen.fr:5000/sygal-db-image
    - docker push registre.unicaen.fr:5000/sygal-db-image

Dockerfile

0 → 100644
+17 −0
Original line number Diff line number Diff line
###########################################################################################
#
#                           Base de données PostgreSQL de SyGAL.
#
###########################################################################################

FROM postgres:13

RUN localedef -i fr_FR -c -f UTF-8 -A /usr/share/locale/locale.alias fr_FR.UTF-8

ENV LANG fr_FR.utf8

# Script d'initialisation de la bdd, lancé automatiquement (ssi le répertoire `data/db` est vide).
COPY docker/init_user_db.sh /docker-entrypoint-initdb.d/

# Copie des scripts SQL de création de la bdd, lancés par le script `init_user_db.sh`.
COPY docker/sql/*.sql /sql/

README.md

0 → 100644
+62 −0
Original line number Diff line number Diff line
# Sygal Db Image

## Construction de l'image (build)

Construisez l'image pour la version de PHP désirée... 

```bash
docker build \
--rm \
-t sygal-db-image \
.
```

**Attention !** Si vous êtes derrière un proxy, vous pouvez transmettre les valeurs courantes de vos variables d'environement `*_proxy` 
à la commande `build` avec des `--build-arg` additionnels, exemple :
```bash
docker build \
--rm \
--build-arg http_proxy \
--build-arg https_proxy \
--build-arg no_proxy \
-t sygal-db-image \
.
```

## Lancement (run)

Exemple :

```bash
docker run \
--env POSTGRES_USER=postgres \
--env POSTGRES_PASSWORD=admin \
--publish 5432:5432 \
--volume $PWD/data/db:/var/lib/postgresql/data \
--volume $PWD/docker/db/sql/:/sql \
--name sygal-db-container \
sygal-db-image
```

Remarques :
- Le montage `./data/db:/var/lib/postgresql/data` permet de persister la base de données.
- Le montage `./docker/db/sql/:/sql` vous permet de remplacer les scripts SQL
  de création/peuplement des objets de la base de données par les vôtres le cas échéant.
  
## Utilisation dans un `docker-compose.yml`

```
version: '2.2'
services:
  sygal-db:
    image: sygal-db
    container_name: sygal-db-container
    restart: always
    environment:
      POSTGRES_PASSWORD: admin
    ports:
      - 5432:5432
    volumes:
      - ./data/db:/var/lib/postgresql/data
      - ./docker/db/sql/:/sql
```

data/.gitignore

0 → 100644
+1 −0
Original line number Diff line number Diff line
db/
 No newline at end of file
Loading