8.4.2-r1 release
Drupal expects an existing database to be configured with.
This commit is contained in:
parent
305e3d5469
commit
d8d3a4556f
|
|
@ -5,24 +5,32 @@ LABEL maintainer "Bitnami <containers@bitnami.com>"
|
|||
RUN install_packages libapr1 libaprutil1 libbz2-1.0 libc6 libcomerr2 libcurl3 libexpat1 libffi6 libfreetype6 libgcc1 libgcrypt20 libgmp10 libgnutls-deb0-28 libgpg-error0 libgssapi-krb5-2 libhogweed2 libicu52 libidn11 libjpeg62-turbo libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2 liblzma5 libmcrypt4 libncurses5 libnettle4 libp11-kit0 libpcre3 libpng12-0 libpq5 libreadline6 librtmp1 libsasl2-2 libssh2-1 libssl1.0.0 libstdc++6 libsybdb5 libtasn1-6 libtidy-0.99-0 libtinfo5 libuuid1 libxml2 libxslt1.1 zlib1g
|
||||
RUN bitnami-pkg unpack apache-2.4.29-0 --checksum 38af9f5ee6088655536238d9f70f4ce7fd6047e1c84fd5b02fa351efbc4f60c6
|
||||
RUN bitnami-pkg unpack php-7.0.25-0 --checksum 06b7eec17da189e1d7c4768d2a8ccc22aeae42b2261af52956c49f32840910ac
|
||||
RUN bitnami-pkg install mysql-client-10.1.28-0 --checksum 8a0ccfd6a62ffccdb25fcf39754c2526b120f416dd390194e8d6edd2ec8ddcee
|
||||
RUN bitnami-pkg unpack mysql-client-10.1.29-0 --checksum 4b29436697f5fcdf38f3c9713a27208304fe36b858afc5aa5a7a4d3f17d84bac
|
||||
RUN bitnami-pkg install libphp-7.0.25-0 --checksum 830adc5002b70b4000921b85590ef70390189e1b7b498e4c71515c9ba8af2a70
|
||||
RUN bitnami-pkg install drush-8.1.15-0 --checksum 3f3b9931aebc37c5a63dc6bc2ae1657dc0152054b787e64cd19b33a9e56024c3
|
||||
RUN bitnami-pkg unpack drupal-8.4.2-0 --checksum 26f870a2822d13d71a35c9d9eede244b03bb1117bce584627f1c497829a57b40
|
||||
RUN bitnami-pkg unpack drupal-8.4.2-1 --checksum 7c86389c5bea5584bf8298da5e2dd2ad98d8c20685a966dbc82d88b53411f943
|
||||
|
||||
COPY rootfs /
|
||||
|
||||
ENV APACHE_HTTPS_PORT_NUMBER="443" \
|
||||
ENV ALLOW_EMPTY_PASSWORD="no" \
|
||||
APACHE_HTTPS_PORT_NUMBER="443" \
|
||||
APACHE_HTTP_PORT_NUMBER="80" \
|
||||
BITNAMI_APP_NAME="drupal" \
|
||||
BITNAMI_IMAGE_VERSION="8.4.2-r0" \
|
||||
BITNAMI_IMAGE_VERSION="8.4.2-r1" \
|
||||
DRUPAL_DATABASE_NAME="bitnami_drupal" \
|
||||
DRUPAL_DATABASE_PASSWORD="" \
|
||||
DRUPAL_DATABASE_USER="bn_drupal" \
|
||||
DRUPAL_EMAIL="user@example.com" \
|
||||
DRUPAL_PASSWORD="bitnami" \
|
||||
DRUPAL_USERNAME="user" \
|
||||
MARIADB_HOST="mariadb" \
|
||||
MARIADB_PASSWORD="" \
|
||||
MARIADB_PORT_NUMBER="3306" \
|
||||
MARIADB_USER="root" \
|
||||
MARIADB_ROOT_PASSWORD="" \
|
||||
MARIADB_ROOT_USER="root" \
|
||||
MYSQL_CLIENT_CREATE_DATABASE_NAME="" \
|
||||
MYSQL_CLIENT_CREATE_DATABASE_PASSWORD="" \
|
||||
MYSQL_CLIENT_CREATE_DATABASE_PRIVILEGES="ALL" \
|
||||
MYSQL_CLIENT_CREATE_DATABASE_USER="" \
|
||||
PATH="/opt/bitnami/apache/bin:/opt/bitnami/php/bin:/opt/bitnami/mysql/bin:/opt/bitnami/drush:$PATH"
|
||||
|
||||
EXPOSE 80 443
|
||||
|
|
|
|||
|
|
@ -5,12 +5,20 @@ services:
|
|||
image: 'bitnami/mariadb:latest'
|
||||
environment:
|
||||
- ALLOW_EMPTY_PASSWORD=yes
|
||||
- MARIADB_USER=bn_drupal
|
||||
- MARIADB_DATABASE=bitnami_drupal
|
||||
volumes:
|
||||
- 'mariadb_data:/bitnami'
|
||||
drupal:
|
||||
image: 'bitnami/drupal:8'
|
||||
labels:
|
||||
kompose.service.type: nodeport
|
||||
environment:
|
||||
- MARIADB_HOST=mariadb
|
||||
- MARIADB_PORT_NUMBER=3306
|
||||
- DRUPAL_DATABASE_USER=bn_drupal
|
||||
- DRUPAL_DATABASE_NAME=bitnami_drupal
|
||||
- ALLOW_EMPTY_PASSWORD=yes
|
||||
ports:
|
||||
- '80:80'
|
||||
- '443:443'
|
||||
|
|
|
|||
|
|
@ -6,7 +6,8 @@
|
|||
print_welcome_page
|
||||
|
||||
if [[ "$1" == "nami" && "$2" == "start" ]] || [[ "$1" == "/run.sh" ]]; then
|
||||
nami_initialize apache php drupal
|
||||
. /init.sh
|
||||
nami_initialize apache php mysql-client drupal
|
||||
info "Starting drupal... "
|
||||
fi
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
{
|
||||
"databaseAdminPassword": "{{$global.env.MARIADB_PASSWORD}}",
|
||||
"databaseAdminUser": "{{$global.env.MARIADB_USER}}",
|
||||
"databaseName": "{{$global.env.DRUPAL_DATABASE_NAME}}",
|
||||
"databasePassword": "{{$global.env.DRUPAL_DATABASE_PASSWORD}}",
|
||||
"databaseServerHost": "{{$global.env.MARIADB_HOST}}",
|
||||
"databaseServerPort": "{{$global.env.MARIADB_PORT_NUMBER}}",
|
||||
"databaseUser": "{{$global.env.DRUPAL_DATABASE_USER}}",
|
||||
"email": "{{$global.env.DRUPAL_EMAIL}}",
|
||||
"password": "{{$global.env.DRUPAL_PASSWORD}}",
|
||||
"username": "{{$global.env.DRUPAL_USERNAME}}"
|
||||
|
|
|
|||
|
|
@ -0,0 +1,29 @@
|
|||
##
|
||||
## @brief Helper function to show an error when a password is empty and exit
|
||||
## param $1 Input name
|
||||
##
|
||||
empty_password_error() {
|
||||
error "The $1 environment variable is empty or not set. Set the environment variable ALLOW_EMPTY_PASSWORD=yes to allow the container to be started with blank passwords. This is recommended only for development."
|
||||
exit 1
|
||||
}
|
||||
|
||||
##
|
||||
## @brief Helper function to show a warning when the ALLOW_EMPTY_PASSWORD flag is enabled
|
||||
##
|
||||
empty_password_enabled_warn() {
|
||||
warn "You set the environment variable ALLOW_EMPTY_PASSWORD=${ALLOW_EMPTY_PASSWORD}. For safety reasons, do not use this flag in a production environment."
|
||||
}
|
||||
|
||||
# Validate passwords
|
||||
if [[ "$ALLOW_EMPTY_PASSWORD" =~ ^(yes|Yes|YES)$ ]]; then
|
||||
empty_password_enabled_warn
|
||||
else
|
||||
# Database creation by MySQL client
|
||||
if [[ -n "$MYSQL_CLIENT_CREATE_DATABASE_USER" && -z "$MYSQL_CLIENT_CREATE_DATABASE_PASSWORD" ]]; then
|
||||
empty_password_error MYSQL_CLIENT_CREATE_DATABASE_PASSWORD
|
||||
fi
|
||||
# Drupal database
|
||||
if [[ -z "$DRUPAL_DATABASE_PASSWORD" ]]; then
|
||||
empty_password_error DRUPAL_DATABASE_PASSWORD
|
||||
fi
|
||||
fi
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"allowEmptyPassword": "{{$global.env.ALLOW_EMPTY_PASSWORD}}",
|
||||
"createDatabaseName": "{{$global.env.MYSQL_CLIENT_CREATE_DATABASE_NAME}}",
|
||||
"createDatabasePassword": "{{$global.env.MYSQL_CLIENT_CREATE_DATABASE_PASSWORD}}",
|
||||
"createDatabasePrivileges": "{{$global.env.MYSQL_CLIENT_CREATE_DATABASE_PRIVILEGES}}",
|
||||
"createDatabaseUser": "{{$global.env.MYSQL_CLIENT_CREATE_DATABASE_USER}}",
|
||||
"host": "{{$global.env.MARIADB_HOST}}",
|
||||
"port": "{{$global.env.MARIADB_PORT_NUMBER}}",
|
||||
"rootPassword": "{{$global.env.MARIADB_ROOT_PASSWORD}}",
|
||||
"rootUser": "{{$global.env.MARIADB_ROOT_USER}}"
|
||||
}
|
||||
|
|
@ -57,11 +57,20 @@ services:
|
|||
image: 'bitnami/mariadb:latest'
|
||||
environment:
|
||||
- ALLOW_EMPTY_PASSWORD=yes
|
||||
- MARIADB_USER=bn_drupal
|
||||
- MARIADB_DATABASE=bitnami_drupal
|
||||
volumes:
|
||||
- 'mariadb_data:/bitnami'
|
||||
|
||||
drupal:
|
||||
image: 'bitnami/drupal:latest'
|
||||
image: 'bitnami/drupal:8'
|
||||
labels:
|
||||
kompose.service.type: nodeport
|
||||
environment:
|
||||
- MARIADB_HOST=mariadb
|
||||
- MARIADB_PORT_NUMBER=3306
|
||||
- DRUPAL_DATABASE_USER=bn_drupal
|
||||
- DRUPAL_DATABASE_NAME=bitnami_drupal
|
||||
- ALLOW_EMPTY_PASSWORD=yes
|
||||
ports:
|
||||
- '80:80'
|
||||
- '443:443'
|
||||
|
|
@ -69,7 +78,6 @@ services:
|
|||
- 'drupal_data:/bitnami'
|
||||
depends_on:
|
||||
- mariadb
|
||||
|
||||
volumes:
|
||||
mariadb_data:
|
||||
driver: local
|
||||
|
|
@ -87,21 +95,33 @@ If you want to run the application manually instead of using docker-compose, the
|
|||
$ docker network create drupal-tier
|
||||
```
|
||||
|
||||
2. Start a MariaDB database in the network generated:
|
||||
2. Create a volume for MariaDB persistence and create a MariaDB container
|
||||
|
||||
```bash
|
||||
$ docker run -d --name mariadb -e ALLOW_EMPTY_PASSWORD=yes --net drupal-tier bitnami/mariadb:latest
|
||||
$ docker volume create --name mariadb_data
|
||||
$ docker run -d --name mariadb \
|
||||
-e ALLOW_EMPTY_PASSWORD=yes \
|
||||
-e MARIADB_USER=bn_drupal \
|
||||
-e MARIADB_DATABASE=bitnami_drupal \
|
||||
--net drupal-tier \
|
||||
--volume mariadb_data:/bitnami \
|
||||
bitnami/mariadb:latest
|
||||
```
|
||||
|
||||
*Note:* You need to give the container a name in order to Drupal to resolve the host
|
||||
|
||||
3. Run the Drupal container:
|
||||
3. Create volumes for Drupal persistence and launch the container
|
||||
|
||||
```bash
|
||||
$ docker run -d -p 80:80 -p 443:443 --name drupal --net drupal-tier bitnami/drupal:latest
|
||||
$ docker volume create --name drupal_data
|
||||
$ docker run -d --name drupal -p 80:80 -p 443:443 \
|
||||
-e ALLOW_EMPTY_PASSWORD=yes \
|
||||
-e DRUPAL_DATABASE_USER=bn_drupal \
|
||||
-e DRUPAL_DATABASE_NAME=bitnami_drupal \
|
||||
--net drupal-tier \
|
||||
--volume drupal_data:/bitnami \
|
||||
bitnami/drupal:latest
|
||||
```
|
||||
|
||||
Then you can access your application at http://your-ip/
|
||||
Access your application at http://your-ip/
|
||||
|
||||
## Persisting your application
|
||||
|
||||
|
|
@ -125,6 +145,8 @@ services:
|
|||
image: 'bitnami/mariadb:latest'
|
||||
environment:
|
||||
- ALLOW_EMPTY_PASSWORD=yes
|
||||
- MARIADB_USER=bn_drupal
|
||||
- MARIADB_DATABASE=bitnami_drupal
|
||||
volumes:
|
||||
- '/path/to/mariadb-persistence:/bitnami'
|
||||
drupal:
|
||||
|
|
@ -134,6 +156,10 @@ services:
|
|||
ports:
|
||||
- '80:80'
|
||||
- '443:443'
|
||||
environment:
|
||||
- DRUPAL_DATABASE_USER=bn_drupal
|
||||
- DRUPAL_DATABASE_NAME=bitnami_drupal
|
||||
- ALLOW_EMPTY_PASSWORD=yes
|
||||
volumes:
|
||||
- '/path/to/drupal-persistence:/bitnami'
|
||||
```
|
||||
|
|
@ -149,7 +175,10 @@ services:
|
|||
2. Create a MariaDB container with host volume:
|
||||
|
||||
```bash
|
||||
$ docker run -d --name mariadb -e ALLOW_EMPTY_PASSWORD=yes \
|
||||
$ docker run -d --name mariadb \
|
||||
-e ALLOW_EMPTY_PASSWORD=yes \
|
||||
-e MARIADB_USER=bn_drupal \
|
||||
-e MARIADB_DATABASE=bitnami_drupal \
|
||||
--net drupal-tier \
|
||||
--volume /path/to/mariadb-persistence:/bitnami \
|
||||
bitnami/mariadb:latest
|
||||
|
|
@ -161,6 +190,9 @@ services:
|
|||
|
||||
```bash
|
||||
$ docker run -d --name drupal -p 80:80 -p 443:443 \
|
||||
-e ALLOW_EMPTY_PASSWORD=yes \
|
||||
-e DRUPAL_DATABASE_USER=bn_drupal \
|
||||
-e DRUPAL_DATABASE_NAME=bitnami_drupal \
|
||||
--net drupal-tier \
|
||||
--volume /path/to/drupal-persistence:/bitnami \
|
||||
bitnami/drupal:latest
|
||||
|
|
@ -231,13 +263,31 @@ drupal:
|
|||
|
||||
Available variables:
|
||||
|
||||
##### User and Site configuration
|
||||
|
||||
- `DRUPAL_USERNAME`: Drupal application username. Default: **user**
|
||||
- `DRUPAL_PASSWORD`: Drupal application password. Default: **bitnami**
|
||||
- `DRUPAL_EMAIL`: Drupal application email. Default: **user@example.com**
|
||||
- `MARIADB_USER`: Root user for the MariaDB database. Default: **root**
|
||||
- `MARIADB_PASSWORD`: Root password for the MariaDB.
|
||||
- `MARIADB_HOST`: Hostname for MariaDB server. Default: **mariadb**
|
||||
- `MARIADB_PORT_NUMBER`: Port used by MariaDB server. Default: **3306**
|
||||
|
||||
##### Use an existing database
|
||||
|
||||
- `MARIADB_HOST`: Hostname for MariaDB server. Default: **mariadb**
|
||||
- `MARIADB_PORT_NUMBER`: Port used by MariaDB server. Default: **3306**
|
||||
- `DRUPAL_DATABASE_NAME`: Database name that Drupal will use to connect with the database. Default: **bitnami_drupal**
|
||||
- `DRUPAL_DATABASE_USER`: Database user that Drupal will use to connect with the database. Default: **bn_drupal**
|
||||
- `DRUPAL_DATABASE_PASSWORD`: Database password that Drupal will use to connect with the database. No defaults.
|
||||
- `ALLOW_EMPTY_PASSWORD`: It can be used to allow blank passwords. Default: **no**
|
||||
|
||||
##### Create a database for Drupal using mysql-client
|
||||
|
||||
- `MARIADB_HOST`: Hostname for MariaDB server. Default: **mariadb**
|
||||
- `MARIADB_PORT_NUMBER`: Port used by MariaDB server. Default: **3306**
|
||||
- `MARIADB_ROOT_USER`: Database admin user. Default: **root**
|
||||
- `MARIADB_ROOT_PASSWORD`: Database password for the `MARIADB_ROOT_USER` user. No defaults.
|
||||
- `MYSQL_CLIENT_CREATE_DATABASE_NAME`: New database to be created by the mysql client module. No defaults.
|
||||
- `MYSQL_CLIENT_CREATE_DATABASE_USER`: New database user to be created by the mysql client module. No defaults.
|
||||
- `MYSQL_CLIENT_CREATE_DATABASE_PASSWORD`: Database password for the `MYSQL_CLIENT_CREATE_DATABASE_USER` user. No defaults.
|
||||
- `ALLOW_EMPTY_PASSWORD`: It can be used to allow blank passwords. Default: **no**
|
||||
|
||||
# Contributing
|
||||
|
||||
|
|
|
|||
|
|
@ -8,8 +8,6 @@ jobs:
|
|||
RELEASE_SERIES_LIST: "8"
|
||||
LATEST_STABLE: "8"
|
||||
IMAGE_NAME: drupal
|
||||
CHART_NAME: drupal
|
||||
CHART_REPO: https://github.com/kubernetes/charts
|
||||
DOCKER_PROJECT: bitnami
|
||||
QUAY_PROJECT: bitnami
|
||||
GCLOUD_PROJECT: bitnami-containers
|
||||
|
|
|
|||
Loading…
Reference in New Issue