TYPO3 Quickstart in Docker
This repository contains build instructions for a simple TYPO3 Docker image.
Note that this image is not intended for production usage (yet). It's goal is to provide users an easy quickstart for working with TYPO3.
Usage
This container does not ship a database management system; which means you'll have to create your own database container. The upside of this is that you're not bound to any specific version of MySQL or MariaDB and can even use a PostgreSQL database if you like.
-
So, the first step should be to create a database container:
$ docker run -d --name typo3-db \ -e MYSQL_ROOT_PASSWORD=yoursupersecretpassword \ -e MYSQL_USER=typo3 \ -e MYSQL_PASSWORD=yourothersupersecretpassword \ -e MYSQL_DATABASE=typo3 \ mariadb:latest \ --character-set-server=utf8 \ --collation-server=utf8_unicode_ci
-
Next, use this image to create your TYPO3 container and link it with the database container:
$ docker run -d --name typo3-web \ --link typo3-db:db \ -p 80:80 \ martinhelmich/typo3:10
-
After that, simply open
http://localhost/
in your browser to start the TYPO3 install tool. Note: If you're using Docker Machine to run Docker on Windows or MacOS, you'll need the Docker VM's IP instead (which you can find out using thedocker-machine ip default
command). -
Complete the install tool. When prompted for database credentials, use the environment variables that you've passed to the database container in step 1. If you've linked the containers using the
--link
flag as shown in step 2, usedb
as database host name.
Special use cases
Using PostgreSQL instead of MySQL
This image comes with full support for PostgreSQL as database driver. In this case, simply start a PostgreSQL database instead of MySQL:
$ docker run -d --name typo3-db \
-e POSTGRES_PASSWORD=yoursupersecretpassword \
-e POSTGRES_USER=typo3 \
-e POSTGRES_DATABASE=typo3 \
postgres:latest
Then, proceed as before.
Available tags
This repository offers the following image tags:
latest
maps to the latest available LTS version (currently, latest10.4.*
)10.4
and10
for the latest available version from the10.*
respectively10.4.*
branch.10.3
for the latest available version from the10.3.*
branch.10.2
for the latest available version from the10.2.*
branch.10.1
for the latest available version from the10.1.*
branch.9.5
and9
for the latest available version from the9.*
respectively9.5.*
branch.8.7
and8
for the latest available version from the8.*
respectively8.7.*
branch.7.6
and7
for the latest available version from the7.*
respectively7.6.*
branch.6.2
and6
for the latest available version from the6.*
respectively6.2.*
branch.