pgAgent
This commit is contained in:
13
grafana.md
13
grafana.md
@@ -44,9 +44,18 @@ http://100.68.98.xx:3000/
|
||||
### Sur PC avec Docker
|
||||
|
||||
```shell
|
||||
docker pull grafana/grafana
|
||||
docker pull grafana/grafana:12.1
|
||||
|
||||
docker run --name=grafana -p 9005:3000 -d grafana/grafana:latest
|
||||
docker run --detach --name grafana \
|
||||
--network proxy_net \
|
||||
-e "GF_SECURITY_ADMIN_USER=admin" \
|
||||
-e "GF_SECURITY_ADMIN_PASSWORD=geii2025" \
|
||||
-e "GF_USERS_ALLOW_SIGN_UP=false" \
|
||||
-e "GF_DEFAULT_THEME=system" \
|
||||
--label "caddy=grafana.localhost" \
|
||||
--label "caddy.reverse_proxy={{upstreams 3000}}" \
|
||||
--label "caddy.tls=internal" \
|
||||
grafana/grafana:12.1
|
||||
```
|
||||
|
||||
### Sur Raspberry
|
||||
|
||||
143
postgresql.Dockerfile
Normal file
143
postgresql.Dockerfile
Normal file
@@ -0,0 +1,143 @@
|
||||
FROM debian:forky AS build-essential
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get update; \
|
||||
apt-get upgrade -y
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
build-essential \
|
||||
ca-certificates \
|
||||
checkinstall \
|
||||
cmake \
|
||||
;
|
||||
|
||||
FROM build-essential AS build-pgdev
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
postgresql-server-dev-18 \
|
||||
;
|
||||
|
||||
# =============================================================================
|
||||
# pgRouting
|
||||
#
|
||||
FROM build-pgdev AS pgrouting
|
||||
|
||||
ARG pgrouting_release=3.8.0
|
||||
|
||||
ADD "https://github.com/pgRouting/pgrouting/releases/download/v${pgrouting_release}/pgrouting-${pgrouting_release}.tar.gz" \
|
||||
/tmp/pgrouting.tar.gz
|
||||
|
||||
RUN set -eux; \
|
||||
tar -xvf /tmp/pgrouting.tar.gz -C /tmp; \
|
||||
rm -rf /tmp/pgrouting.tar.gz;
|
||||
|
||||
# Installer les dépendances de compilation
|
||||
RUN set -eux; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
libboost-all-dev \
|
||||
;
|
||||
|
||||
WORKDIR /tmp/pgrouting-${pgrouting_release}/build
|
||||
RUN cmake -DBUILD_HTML=OFF -DBUILD_DOXY=OFF ..
|
||||
|
||||
# Create debian package
|
||||
RUN checkinstall -D --install=no --fstrans=no --backup=no --pakdir=/tmp \
|
||||
--pkgname=pgrouting --pkgversion=${pgrouting_release} \
|
||||
--nodoc
|
||||
|
||||
# =============================================================================
|
||||
# TimescaleDB
|
||||
|
||||
FROM build-pgdev AS timescaledb
|
||||
|
||||
ARG timescaledb_release=2.23.1
|
||||
|
||||
# Download and extract
|
||||
ADD "https://github.com/timescale/timescaledb/archive/refs/tags/${timescaledb_release}.tar.gz" \
|
||||
/tmp/timescaledb.tar.gz
|
||||
|
||||
RUN set -eux; \
|
||||
tar -xvf /tmp/timescaledb.tar.gz -C /tmp; \
|
||||
rm -rf /tmp/timescaledb.tar.gz;
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
libkrb5-dev \
|
||||
;
|
||||
|
||||
# Build from source
|
||||
WORKDIR /tmp/timescaledb-${timescaledb_release}
|
||||
RUN ./bootstrap
|
||||
|
||||
WORKDIR /tmp/timescaledb-${timescaledb_release}/build
|
||||
RUN make -j$(nproc)
|
||||
|
||||
# Create debian package
|
||||
RUN checkinstall -D --install=no --fstrans=no --backup=no --pakdir=/tmp \
|
||||
--pkgname=timescaledb --pkgversion=${timescaledb_release} \
|
||||
--nodoc
|
||||
|
||||
# =============================================================================
|
||||
# Étape 3 : image finale PostgreSQL propre
|
||||
#
|
||||
FROM postgres:18-trixie
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
locales; \
|
||||
apt-get clean; \
|
||||
sed -i '/fr_FR.UTF-8/s/^# //' /etc/locale.gen; \
|
||||
locale-gen;
|
||||
|
||||
ENV TZ=Europe/Paris
|
||||
ENV LANG=fr_FR.UTF-8
|
||||
ENV LANGUAGE=fr_FR:fr
|
||||
ENV LC_ALL=fr_FR.UTF-8
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
# ca-certificates: for accessing remote raster files;
|
||||
# fix: https://github.com/postgis/docker-postgis/issues/307
|
||||
ca-certificates \
|
||||
postgresql-postgis;
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
postgresql-18-cron;
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
postgresql-18-pgvector;
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
postgresql-18-pgtap;
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
postgresql-18-pglogical;
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
postgresql-18-mobilitydb;\
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Copier uniquement les fichiers installés depuis le builder
|
||||
COPY --from=pgrouting /tmp/*.deb /tmp
|
||||
COPY --from=timescaledb /tmp/*.deb /tmp
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get install \
|
||||
/tmp/*.deb \
|
||||
-y; \
|
||||
rm /tmp/*.deb;
|
||||
|
||||
CMD ["postgres", "-c", "shared_preload_libraries=pg_cron,timescaledb", "-c", "cron.database_name=iut"]
|
||||
@@ -15,6 +15,12 @@ sudo apt install postgresql-18
|
||||
docker network create pgsql_net
|
||||
```
|
||||
|
||||
```shell
|
||||
docker build -t iut/pgsql:2025-13 \
|
||||
--progress=plain \
|
||||
-f postgresql.Dockerfile . &> postgresql.log
|
||||
```
|
||||
|
||||
```shell
|
||||
docker run --detach --name pgsql \
|
||||
--network pgsql_net \
|
||||
@@ -24,7 +30,7 @@ docker run --detach --name pgsql \
|
||||
-e "POSTGRES_USER=iut" \
|
||||
-v pgsql_data:/var/lib/postgresql \
|
||||
-v "./:/docker-entrypoint-initdb.d" \
|
||||
iut/pgsql:2025-12
|
||||
iut/pgsql:2025-13
|
||||
```
|
||||
|
||||
## pgAdmin
|
||||
@@ -40,7 +46,7 @@ docker run --detach --name pgadmin \
|
||||
--label "caddy=pgadmin.localhost" \
|
||||
--label "caddy.reverse_proxy={{upstreams 80}}" \
|
||||
--label "caddy.tls=internal" \
|
||||
dpage/pgadmin4:9.8
|
||||
dpage/pgadmin4:9.10
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user