Update to Symfony 4 as default
This commit is contained in:
parent
4b89901311
commit
ca89eeee3f
|
|
@ -2,7 +2,7 @@ FROM bitnami/minideb-extras:stretch-r420
|
||||||
LABEL maintainer "Bitnami <containers@bitnami.com>"
|
LABEL maintainer "Bitnami <containers@bitnami.com>"
|
||||||
|
|
||||||
# Install required system packages and dependencies
|
# Install required system packages and dependencies
|
||||||
RUN install_packages libbz2-1.0 libc6 libcomerr2 libcurl3 libffi6 libfreetype6 libgcc1 libgcrypt20 libgmp10 libgnutls30 libgpg-error0 libgssapi-krb5-2 libhogweed4 libicu57 libidn11 libidn2-0 libjpeg62-turbo libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2 liblzma5 libmemcached11 libmemcachedutil2 libncurses5 libnettle6 libnghttp2-14 libp11-kit0 libpng16-16 libpq5 libpsl5 libreadline7 librtmp1 libsasl2-2 libssh2-1 libssl1.0.2 libssl1.1 libstdc++6 libsybdb5 libtasn1-6 libtidy5 libtinfo5 libunistring0 libxml2 libxslt1.1 libzip4 zlib1g
|
RUN install_packages libbz2-1.0 libc6 libcomerr2 libcurl3 libffi6 libfreetype6 libgcc1 libgcrypt20 libgmp10 libgnutls30 libgpg-error0 libgssapi-krb5-2 libhogweed4 libicu57 libidn11 libidn2-0 libjpeg62-turbo libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.4-2 liblzma5 libmemcached11 libmemcachedutil2 libncurses5 libnettle6 libnghttp2-14 libp11-kit0 libpng16-16 libpq5 libpsl5 libreadline7 librtmp1 libsasl2-2 libssh2-1 libssl1.0.2 libssl1.1 libstdc++6 libsybdb5 libtasn1-6 libtidy5 libtinfo5 libunistring0 libxml2 libxslt1.1 libzip4 unzip zlib1g
|
||||||
RUN bitnami-pkg unpack php-7.3.7-0 --checksum 706d0a7a939eaa105f6091e77ae72193b986297db5d03f3678099d8a419164c6
|
RUN bitnami-pkg unpack php-7.3.7-0 --checksum 706d0a7a939eaa105f6091e77ae72193b986297db5d03f3678099d8a419164c6
|
||||||
RUN bitnami-pkg install mysql-client-10.3.16-0 --checksum c22e014b6fc259a67fcdd52b365e62ed08e6d7e6871888d9ef935c8531ada9b2
|
RUN bitnami-pkg install mysql-client-10.3.16-0 --checksum c22e014b6fc259a67fcdd52b365e62ed08e6d7e6871888d9ef935c8531ada9b2
|
||||||
RUN bitnami-pkg install symfony-1.5.11-20 --checksum e512f0bbcf6c8a6c01f87adcb8f193699a88db2f811986a65de2a0468c736fc8
|
RUN bitnami-pkg install symfony-1.5.11-20 --checksum e512f0bbcf6c8a6c01f87adcb8f193699a88db2f811986a65de2a0468c736fc8
|
||||||
|
|
|
||||||
|
|
@ -15,21 +15,40 @@ echo "Starting application ..."
|
||||||
if [ "$1" = "/run.sh" ]; then
|
if [ "$1" = "/run.sh" ]; then
|
||||||
# Create a Symfony app if not found
|
# Create a Symfony app if not found
|
||||||
if [ ! -d "$PROJECT_DIRECTORY" ] ; then
|
if [ ! -d "$PROJECT_DIRECTORY" ] ; then
|
||||||
log "Creating example Symfony application"
|
log "Creating a project with symfony/skeleton"
|
||||||
nami execute symfony createProject --databaseServerHost "$MARIADB_HOST" --databaseServerPort "$MARIADB_PORT_NUMBER" --databaseAdminUser "$MARIADB_USER" "$SYMFONY_PROJECT_NAME" | grep -v undefined
|
|
||||||
|
composer create-project symfony/skeleton $SYMFONY_PROJECT_NAME
|
||||||
|
|
||||||
|
if [ -z "$SYMFONY_NO_DB" ] ; then
|
||||||
|
log "Installing symfony/orm-pack"
|
||||||
|
composer require symfony/orm-pack -d $PROJECT_DIRECTORY
|
||||||
|
fi
|
||||||
|
|
||||||
|
export DATABASE_URL=mysql://$MARIADB_USER@$MARIADB_HOST/$MARIADB_DATABASE
|
||||||
|
|
||||||
|
if [ ! -f "$PROJECT_DIRECTORY/.env.local" ] ; then
|
||||||
|
touch $PROJECT_DIRECTORY
|
||||||
|
echo "DATABASE_URL=$DATABASE_URL" >> $PROJECT_DIRECTORY/.env.local
|
||||||
|
log "Added MariaDB container credentials to .env.local"
|
||||||
|
fi
|
||||||
|
|
||||||
log "Symfony app created"
|
log "Symfony app created"
|
||||||
else
|
else
|
||||||
log "App already created"
|
log "App already created"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Symfony 3.x -> web/
|
||||||
|
[ -d "$PROJECT_DIRECTORY/web" ] && export WEB_DIR=$PROJECT_DIRECTORY/web
|
||||||
|
# Symfony 4.x -> public/
|
||||||
|
[ -d "$PROJECT_DIRECTORY/public" ] && export WEB_DIR=$PROJECT_DIRECTORY/public
|
||||||
|
|
||||||
# Link Symfony app to the index
|
# Link Symfony app to the index
|
||||||
if [ ! -f "$PROJECT_DIRECTORY/web/index.php" ]; then
|
if [ ! -f "$WEB_DIR/index.php" ] && [ -f "$WEB_DIR/app.php" ]; then
|
||||||
sudo ln -s "$PROJECT_DIRECTORY/web/app.php" "$PROJECT_DIRECTORY/web/index.php"
|
sudo ln -s "$WEB_DIR/app.php" "$WEB_DIR/web/index.php"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "symfony successfully initialized"
|
echo "symfony successfully initialized"
|
||||||
|
|
||||||
nami_initialize php
|
nami_initialize php
|
||||||
info "Starting symfony... "
|
info "Starting symfony... "
|
||||||
fi
|
fi
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,3 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
php -S 0.0.0.0:8000 -t $PROJECT_DIRECTORY/web/
|
php -S 0.0.0.0:8000 -t $WEB_DIR
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ FROM bitnami/oraclelinux-extras:7-r400
|
||||||
LABEL maintainer "Bitnami <containers@bitnami.com>"
|
LABEL maintainer "Bitnami <containers@bitnami.com>"
|
||||||
|
|
||||||
# Install required system packages and dependencies
|
# Install required system packages and dependencies
|
||||||
RUN install_packages bzip2-libs cyrus-sasl-lib freetds freetype glibc gmp gnutls keyutils-libs krb5-libs libcom_err libcurl libffi libgcc libgcrypt libgpg-error libicu libidn libjpeg-turbo libmemcached libpng libselinux libssh2 libstdc++ libtasn1 libtidy libxml2 libxslt ncurses-libs nettle nspr nss nss-softokn-freebl nss-util openldap openssl-libs p11-kit pcre postgresql-libs readline xz-libs zlib
|
RUN install_packages bzip2-libs cyrus-sasl-lib freetds freetype glibc gmp gnutls keyutils-libs krb5-libs libcom_err libcurl libffi libgcc libgcrypt libgpg-error libicu libidn libjpeg-turbo libmemcached libpng libselinux libssh2 libstdc++ libtasn1 libtidy libxml2 libxslt ncurses-libs nettle nspr nss nss-softokn-freebl nss-util openldap openssl-libs p11-kit pcre postgresql-libs readline unzip xz-libs zlib
|
||||||
RUN bitnami-pkg unpack php-7.3.7-0 --checksum 433c0d4c346ba1cc2c3e4a117c28acf418460e777863fb341c9be99a3b6afa87
|
RUN bitnami-pkg unpack php-7.3.7-0 --checksum 433c0d4c346ba1cc2c3e4a117c28acf418460e777863fb341c9be99a3b6afa87
|
||||||
RUN bitnami-pkg install mysql-client-10.3.16-0 --checksum bc7ef5b2abef585c0079a7e4cb2a099c5f40cf39402c52078438a39882953ab4
|
RUN bitnami-pkg install mysql-client-10.3.16-0 --checksum bc7ef5b2abef585c0079a7e4cb2a099c5f40cf39402c52078438a39882953ab4
|
||||||
RUN bitnami-pkg install symfony-1.5.11-20 --checksum d4714f97e462524266a97626854747c743e1d4b5a9f9be155f480eef9b592631
|
RUN bitnami-pkg install symfony-1.5.11-20 --checksum d4714f97e462524266a97626854747c743e1d4b5a9f9be155f480eef9b592631
|
||||||
|
|
@ -10,11 +10,7 @@ RUN bitnami-pkg install symfony-1.5.11-20 --checksum d4714f97e462524266a97626854
|
||||||
COPY rootfs /
|
COPY rootfs /
|
||||||
ENV BITNAMI_APP_NAME="symfony" \
|
ENV BITNAMI_APP_NAME="symfony" \
|
||||||
BITNAMI_IMAGE_VERSION="1.5.11-ol-7-r358" \
|
BITNAMI_IMAGE_VERSION="1.5.11-ol-7-r358" \
|
||||||
MARIADB_HOST="mariadb" \
|
PATH="/opt/bitnami/php/bin:/opt/bitnami/php/sbin:/opt/bitnami/mysql/bin:/opt/bitnami/symfony/bin:$PATH"
|
||||||
MARIADB_PORT_NUMBER="3306" \
|
|
||||||
MARIADB_USER="root" \
|
|
||||||
PATH="/opt/bitnami/php/bin:/opt/bitnami/php/sbin:/opt/bitnami/mysql/bin:/opt/bitnami/symfony/bin:$PATH" \
|
|
||||||
SYMFONY_PROJECT_NAME="myapp"
|
|
||||||
|
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,21 +15,40 @@ echo "Starting application ..."
|
||||||
if [ "$1" = "/run.sh" ]; then
|
if [ "$1" = "/run.sh" ]; then
|
||||||
# Create a Symfony app if not found
|
# Create a Symfony app if not found
|
||||||
if [ ! -d "$PROJECT_DIRECTORY" ] ; then
|
if [ ! -d "$PROJECT_DIRECTORY" ] ; then
|
||||||
log "Creating example Symfony application"
|
log "Creating a project with symfony/skeleton"
|
||||||
nami execute symfony createProject --databaseServerHost "$MARIADB_HOST" --databaseServerPort "$MARIADB_PORT_NUMBER" --databaseAdminUser "$MARIADB_USER" "$SYMFONY_PROJECT_NAME" | grep -v undefined
|
|
||||||
|
composer create-project symfony/skeleton $SYMFONY_PROJECT_NAME
|
||||||
|
|
||||||
|
if [ -z "$SYMFONY_NO_DB" ] ; then
|
||||||
|
log "Installing symfony/orm-pack"
|
||||||
|
composer require symfony/orm-pack -d $PROJECT_DIRECTORY
|
||||||
|
fi
|
||||||
|
|
||||||
|
export DATABASE_URL=mysql://$MARIADB_USER@$MARIADB_HOST/$MARIADB_DATABASE
|
||||||
|
|
||||||
|
if [ ! -f "$PROJECT_DIRECTORY/.env.local" ] ; then
|
||||||
|
touch $PROJECT_DIRECTORY
|
||||||
|
echo "DATABASE_URL=$DATABASE_URL" >> $PROJECT_DIRECTORY/.env.local
|
||||||
|
log "Added MariaDB container credentials to .env.local"
|
||||||
|
fi
|
||||||
|
|
||||||
log "Symfony app created"
|
log "Symfony app created"
|
||||||
else
|
else
|
||||||
log "App already created"
|
log "App already created"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Symfony 3.x -> web/
|
||||||
|
[ -d "$PROJECT_DIRECTORY/web" ] && export WEB_DIR=$PROJECT_DIRECTORY/web
|
||||||
|
# Symfony 4.x -> public/
|
||||||
|
[ -d "$PROJECT_DIRECTORY/public" ] && export WEB_DIR=$PROJECT_DIRECTORY/public
|
||||||
|
|
||||||
# Link Symfony app to the index
|
# Link Symfony app to the index
|
||||||
if [ ! -f "$PROJECT_DIRECTORY/web/index.php" ]; then
|
if [ ! -f "$WEB_DIR/index.php" ] && [ -f "$WEB_DIR/app.php" ]; then
|
||||||
sudo ln -s "$PROJECT_DIRECTORY/web/app.php" "$PROJECT_DIRECTORY/web/index.php"
|
sudo ln -s "$WEB_DIR/app.php" "$WEB_DIR/web/index.php"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "symfony successfully initialized"
|
echo "symfony successfully initialized"
|
||||||
|
|
||||||
nami_initialize php
|
nami_initialize php
|
||||||
info "Starting symfony... "
|
info "Starting symfony... "
|
||||||
fi
|
fi
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,3 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
php -S 0.0.0.0:8000 -t $PROJECT_DIRECTORY/web/
|
php -S 0.0.0.0:8000 -t $WEB_DIR
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,11 @@
|
||||||
|
|
||||||
# Bitnami Symfony Development Container
|
# Bitnami Symfony Development Container
|
||||||
|
|
||||||
> Note that this is a development container that includes the [`symfony` command-line tool](https://symfony.com/blog/introducing-the-new-symfony-installer).
|
> Note that this is a development container. If a Symfony app is not already
|
||||||
> This allows you to create a project based on any version of symfony.
|
> present, `composer create-project symfony/skeleton $SYMFONY_PROJECT_NAME`
|
||||||
|
> is run to create a Symfony 4.x project.
|
||||||
|
>
|
||||||
|
> In the absence of the `$SYMFONY_NO_DB,` envvar/flag, `symfony/orm-pack` is installed.
|
||||||
|
|
||||||
## TL;DR;
|
## TL;DR;
|
||||||
|
|
||||||
|
|
@ -11,6 +14,8 @@
|
||||||
```bash
|
```bash
|
||||||
$ mkdir ~/myapp && cd ~/myapp
|
$ mkdir ~/myapp && cd ~/myapp
|
||||||
$ curl -LO https://raw.githubusercontent.com/bitnami/bitnami-docker-symfony/master/docker-compose.yml
|
$ curl -LO https://raw.githubusercontent.com/bitnami/bitnami-docker-symfony/master/docker-compose.yml
|
||||||
|
# Set some default envvars
|
||||||
|
$ echo "SYMFONY_PROJECT_NAME=myapp\nMARIADB_HOST=mariadb\nMARIADB_PORT_NUMBER=3306\nMARIADB_USER=bobby\nMARIADB_PASSWORD=tables\nMARIADB_DATABASE=myapp" > .env
|
||||||
$ docker-compose up
|
$ docker-compose up
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -75,6 +80,12 @@ Download the [docker-compose.yml](https://raw.githubusercontent.com/bitnami/bitn
|
||||||
$ curl -LO https://raw.githubusercontent.com/bitnami/bitnami-docker-symfony/master/docker-compose.yml
|
$ curl -LO https://raw.githubusercontent.com/bitnami/bitnami-docker-symfony/master/docker-compose.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Set a few environment variables
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ echo "SYMFONY_PROJECT_NAME=myapp\nMARIADB_HOST=mariadb\nMARIADB_PORT_NUMBER=3306\nMARIADB_USER=bobby\nMARIADB_PASSWORD=tables\nMARIADB_DATABASE=myapp" > .env
|
||||||
|
```
|
||||||
|
|
||||||
Finally launch the Symfony application development environment using:
|
Finally launch the Symfony application development environment using:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
version: '2'
|
version: '2'
|
||||||
|
|
||||||
services:
|
services:
|
||||||
myapp:
|
myapp:
|
||||||
image: 'bitnami/symfony:1'
|
image: 'bitnami/symfony:1'
|
||||||
|
|
@ -6,9 +7,11 @@ services:
|
||||||
- '8000:8000'
|
- '8000:8000'
|
||||||
volumes:
|
volumes:
|
||||||
- '.:/app'
|
- '.:/app'
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
depends_on:
|
depends_on:
|
||||||
- mariadb
|
- mariadb
|
||||||
mariadb:
|
mariadb:
|
||||||
image: 'bitnami/mariadb:10.3'
|
image: 'bitnami/mariadb:10.3'
|
||||||
environment:
|
env_file:
|
||||||
- ALLOW_EMPTY_PASSWORD=yes
|
- .env
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue