DEV Community

Anthony Gilbert
Anthony Gilbert

Posted on

3 1

Setting up a Symfony application using Docker.

In this blog we are going to be setting up a Symfony application inside of a Docker container. If you have not previously worked with a plain Docker file, you can follow my last post here.

At this point we should have our container running, and inside of our container we can run the following commands.

To create our own docker container we need to create two new files:

  1. docker-compose.yml
  2. nginx.conf

The docker-compose.yml should contain the following code

version: '3'
services:
    web:
        image: nginx:latest
        ports:
            - "80:80"
        volumes:
            - ./nginx.conf:/etc/nginx/conf.d/nginx.conf
            - ./app:/app
    php:
        image: php:fpm
        volumes:
            - ./app:/app
Enter fullscreen mode Exit fullscreen mode

In order for this to work, you need to create an 'app' folder and inside of that, you need to create a 'public' folder, inside of that you can create your index.html file.

As for the 2nd file mentioned, you need to add the following code:

server {
    listen 80 default_server;
    root /app/public;
} 
Enter fullscreen mode Exit fullscreen mode

This will start the container server and tell the container which directory to point to.
Once we have done this we need to create a index.php file inside of the /app/public directory.

Inside of our newly created index.php file, we need to copy/paste the following:

<?php
phpinfo();
Enter fullscreen mode Exit fullscreen mode

Now we need to re-run the server using docker-compose up.

After restarting the docker container we should see PHP manual page.
If you see this, then congratulations, you have successfully created your PHP Docker container!! 🎊 🎊

Now that we have our basic PHP container, we can add Symfony to it.

To do this we need to stop the server by using the control + c command.

Afterwards we want to run the following command: curl -LO https://raw.githubusercontent.com/bitnami/bitnami-docker-symfony/master/docker-compose.yml

This will download Bitnami's official Symfony docker-compose.yml image. Once this command has finished, we can re-run docker-compose up to run the build process. This is going to take some time, so feel free to grab a beverage.

Once it has finished, you can visit localhost:8000 to visit your newly generated Symfony app. Which should look like this A picture of the complete product.
And you're done!!

-Anthony
Follow me on twitter

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay