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
.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