mirror of
https://github.com/bitnami/containers.git
synced 2026-03-09 15:40:15 +08:00
added conf volume
This commit is contained in:
@@ -14,7 +14,7 @@ RUN sh $BITNAMI_PREFIX/install.sh\
|
||||
|
||||
COPY bitnami-utils-custom.sh /bitnami-utils-custom.sh
|
||||
EXPOSE 5432
|
||||
VOLUME ["$BITNAMI_APP_VOL_PREFIX/data", "$BITNAMI_APP_VOL_PREFIX/logs"]
|
||||
VOLUME ["$BITNAMI_APP_VOL_PREFIX/data", "$BITNAMI_APP_VOL_PREFIX/conf", "$BITNAMI_APP_VOL_PREFIX/logs"]
|
||||
|
||||
COPY entrypoint.sh /entrypoint.sh
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
|
||||
@@ -9,19 +9,27 @@ initialize_database() {
|
||||
gosu $BITNAMI_APP_USER $BITNAMI_APP_DIR/bin/initdb -D $BITNAMI_APP_DIR/data \
|
||||
-U $BITNAMI_APP_USER -E unicode -A trust >/dev/null
|
||||
|
||||
echo "==> Populating conf files..."
|
||||
echo ""
|
||||
mv $BITNAMI_APP_DIR/data/{pg_hba.conf,pg_ident.conf,postgresql.auto.conf,postgresql.conf} $BITNAMI_APP_DIR/conf/
|
||||
ln -sf $BITNAMI_APP_DIR/conf/pg_hba.conf $BITNAMI_APP_DIR/data/
|
||||
ln -sf $BITNAMI_APP_DIR/conf/pg_ident.conf $BITNAMI_APP_DIR/data/
|
||||
ln -sf $BITNAMI_APP_DIR/conf/postgresql.auto.conf $BITNAMI_APP_DIR/data/
|
||||
ln -sf $BITNAMI_APP_DIR/conf/postgresql.conf $BITNAMI_APP_DIR/data/
|
||||
|
||||
echo "==> Configuring PostgreSQL to listen on all interfaces..."
|
||||
echo ""
|
||||
cat >> $BITNAMI_APP_DIR/data/postgresql.conf <<EOF
|
||||
cat >> $BITNAMI_APP_DIR/conf/postgresql.conf <<EOF
|
||||
listen_addresses='*'
|
||||
EOF
|
||||
|
||||
echo "==> Enabling remote connections to PostgreSQL server..."
|
||||
echo ""
|
||||
cat >> $BITNAMI_APP_DIR/data/pg_hba.conf <<EOF
|
||||
cat >> $BITNAMI_APP_DIR/conf/pg_hba.conf <<EOF
|
||||
host all all 0.0.0.0/0 md5
|
||||
EOF
|
||||
|
||||
cat >> $BITNAMI_APP_DIR/data/postgresql.conf <<EOF
|
||||
cat >> $BITNAMI_APP_DIR/conf/postgresql.conf <<EOF
|
||||
logging_collector = on
|
||||
log_directory = '$BITNAMI_APP_DIR/logs'
|
||||
log_filename = 'postgresql.log'
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
VOLUMES:
|
||||
$BITNAMI_APP_VOL_PREFIX/data: Location of $BITNAMI_APP_NAME data files.
|
||||
$BITNAMI_APP_VOL_PREFIX/conf: Location of $BITNAMI_APP_NAME config files.
|
||||
$BITNAMI_APP_VOL_PREFIX/logs: Location of postgresql.log.
|
||||
|
||||
PORTS:
|
||||
@@ -15,7 +16,7 @@
|
||||
MISC:
|
||||
Options: You can add extra options during the docker run using the -- prefix.
|
||||
Note: POSTGRESQL_USER works in conjunction with POSTGRESQL_DATABASE environment variable.
|
||||
Tip: Back up the $BITNAMI_APP_VOL_PREFIX/data directory regularly.
|
||||
Tip: Back up the $BITNAMI_APP_VOL_PREFIX/data and $BITNAMI_APP_VOL_PREFIX/conf directories regularly.
|
||||
|
||||
COMMANDS:
|
||||
print-help: Print this page.
|
||||
|
||||
@@ -4,6 +4,7 @@ environment_variables:
|
||||
POSTGRESQL_DATABASE: "Database to be created on first boot, accessible by POSTGRESQL_USER (default: none)."
|
||||
volumes:
|
||||
$BITNAMI_APP_VOL_PREFIX/data: "Location of $BITNAMI_APP_NAME data files."
|
||||
$BITNAMI_APP_VOL_PREFIX/conf: "Location of $BITNAMI_APP_NAME config files."
|
||||
$BITNAMI_APP_VOL_PREFIX/logs: "Location of postgresql.log."
|
||||
ports:
|
||||
5432: "$BITNAMI_APP_NAME default port."
|
||||
@@ -11,4 +12,4 @@ misc:
|
||||
Options: "You can add extra options during the docker run using the -- prefix."
|
||||
Note: "The user and database creation happens only the first time you run the container."
|
||||
Note: "POSTGRESQL_USER works in conjunction with POSTGRESQL_DATABASE environment variable."
|
||||
Tip: "Back up the $BITNAMI_APP_VOL_PREFIX/data directory regularly."
|
||||
Tip: "Back up the $BITNAMI_APP_VOL_PREFIX/data and $BITNAMI_APP_VOL_PREFIX/conf directories regularly."
|
||||
|
||||
@@ -3,7 +3,9 @@ cd $BITNAMI_APP_DIR
|
||||
|
||||
mkdir -p $BITNAMI_APP_DIR/data
|
||||
mkdir -p $BITNAMI_APP_DIR/logs
|
||||
mkdir -p $BITNAMI_APP_DIR/conf
|
||||
|
||||
# symlink mount points at root to install dir
|
||||
ln -s $BITNAMI_APP_DIR/data $BITNAMI_APP_VOL_PREFIX/data
|
||||
ln -s $BITNAMI_APP_DIR/logs $BITNAMI_APP_VOL_PREFIX/logs
|
||||
ln -s $BITNAMI_APP_DIR/conf $BITNAMI_APP_VOL_PREFIX/conf
|
||||
|
||||
@@ -27,8 +27,9 @@ teardown() {
|
||||
cleanup_volumes_content() {
|
||||
docker run --rm\
|
||||
-v $HOST_VOL_PREFIX/data:$VOL_PREFIX/data\
|
||||
-v $HOST_VOL_PREFIX/conf:$VOL_PREFIX/conf\
|
||||
-v $HOST_VOL_PREFIX/logs:$VOL_PREFIX/logs\
|
||||
$IMAGE_NAME rm -rf $VOL_PREFIX/data/ $VOL_PREFIX/logs/
|
||||
$IMAGE_NAME rm -rf $VOL_PREFIX/data/ $VOL_PREFIX/logs/ $VOL_PREFIX/conf/
|
||||
}
|
||||
|
||||
create_container(){
|
||||
@@ -55,6 +56,7 @@ create_full_container_mounted(){
|
||||
-e POSTGRESQL_DATABASE=$POSTGRESQL_DATABASE\
|
||||
-e POSTGRESQL_PASSWORD=$POSTGRESQL_PASSWORD\
|
||||
-v $HOST_VOL_PREFIX/data:$VOL_PREFIX/data\
|
||||
-v $HOST_VOL_PREFIX/conf:$VOL_PREFIX/conf\
|
||||
-v $HOST_VOL_PREFIX/logs:$VOL_PREFIX/logs\
|
||||
$IMAGE_NAME
|
||||
sleep $SLEEP_TIME
|
||||
@@ -129,6 +131,7 @@ create_full_container_mounted(){
|
||||
|
||||
docker run -d --name $CONTAINER_NAME\
|
||||
-v $HOST_VOL_PREFIX/data:$VOL_PREFIX/data\
|
||||
-v $HOST_VOL_PREFIX/conf:$VOL_PREFIX/conf\
|
||||
$IMAGE_NAME
|
||||
sleep $SLEEP_TIME
|
||||
|
||||
@@ -141,12 +144,13 @@ create_full_container_mounted(){
|
||||
create_container -d
|
||||
run docker inspect $CONTAINER_NAME
|
||||
[[ "$output" =~ "$VOL_PREFIX/data" ]]
|
||||
[[ "$output" =~ "$VOL_PREFIX/conf" ]]
|
||||
[[ "$output" =~ "$VOL_PREFIX/logs" ]]
|
||||
}
|
||||
|
||||
@test "Data gets generated in data and logs if bind mounted in the host" {
|
||||
@test "Data gets generated in conf, data and logs if bind mounted in the host" {
|
||||
create_full_container_mounted
|
||||
run docker run -v $HOST_VOL_PREFIX:$HOST_VOL_PREFIX --rm $IMAGE_NAME ls -l $HOST_VOL_PREFIX/data/postgresql.conf $HOST_VOL_PREFIX/logs/postgresql.log
|
||||
run docker run -v $HOST_VOL_PREFIX:$HOST_VOL_PREFIX --rm $IMAGE_NAME ls -l $HOST_VOL_PREFIX/conf/postgresql.conf $HOST_VOL_PREFIX/logs/postgresql.log
|
||||
[ $status = 0 ]
|
||||
cleanup_volumes_content
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user