Discuss

Ultra fast web development with Docker in Wappler

On this page

What is Docker?

You must have heard of Docker. This brand new technology allows you to run any application quickly and easy without any installation hustle.

Docker empowers developers to quickly run their website or app in the required environment in seconds. It also makes the live deploy really easy. You can quickly and easy scale up your app depending on its needs.

The powerful Docker technology was till now reserved to highly technical people and command line lovers - but no longer! Its powers are now available in Wappler - the Visual way!

Docker Integration in Wappler

With Wappler we are committed to provide you the best experience and visual tools you need to be able to produce beautiful solutions with less technical hustle. So Docker is a natural fit.

Instant installation

No more local installation of WAMP, MAPM with PHP, MySQL or other web and database servers that you might need to run your local development. Wappler does it all for you! All thanks to Docker.

Now you just need to have Docker Desktop installed and everything else is a single click in Wappler!

Your choice of services

You need specific web server with PHP or specific database like MySQL or PostgreSQL? Just make the choice in your Wappler project options and everything gets installed directly!

You can even have different services per project target! Wappler takes care of it all! No more complicated local installations to get your development environment up and running!

Finally we can offer you ready to go full stack solutions in Wappler! Including the required web servers and databases - out of the box!

Powerful Sample Projects

You can choose your custom settings or choose any of the included Sample Projects - that now include all the web servers, databases and sample data ready to go!

This is also great advantage to the Wappler community that will be able to share their projects, including all the required server configuration and sample data! So other users can just get the project and run it directly! Everything will be setup directly without any hustle thanks to Docker!

Getting Started

It is super easy to enable the Docker integration in Wappler. Just install Docker Desktop for your OS and you are ready!

Setup your target

So now that you have Docker installed, you can use its power to define your development environment.

In Wappler you do that with in your Project Settings / Targets: on your target - just choose the type as "Docker Engine"

image|690x388

Previously we were supporting just own servers (still available as type "Own Server") that you had to have installed separately, but that is no longer needed! Wappler installs and launches the servers you need!

So make your choice:

image|690x386

Just choose which Web Server, Language and Database you want to use, or accept the defaults and you are ready to go!

The Docker toolbar

When you save you project settings with the docker settings, just switch to the target you have defined and you will see a special Docker toolbar in Wappler:

image|690x58

You are single click away from application deploy, so just click on the Launch (rocket) icon:

image|689x72

The magic happens now, you can expand the panel below to see what is going on, all required services get downloaded once and then launched!

image|690x329

Don't worry if initially it takes a bit longer and you see lots of things getting downloaded. This is all Docker being really smart and downloading only the peaces it needs. Everything is cached than so on next launches all the standard images it downloads from the official repositories are getting reused.

What just happened? All Services are up!

You might wondered what happened is everything really up and running?

Well yes all the required services that you choose, like Apache, PHP and MySQL got downloaded from their official distributions, got installed locally and launched! Magic!

No complicated configurations - just launch! You have now a perfect web development environment setup for you!

Lets try it our and launch your web project, just open in the browser: http://localhost:8100

You should see your main page delivered by the services you choose.

Toolbar Actions

Next to the Launch action, you will see also other actions like start, stop, restart, kill and show logs. Those control the services you are running.

image|690x99

What about Databases?

So you selected to use a database as well? Than the database is also up and running! And Wappler even created a Server Connect - Database Connection file for you to use directly!

image|347x500

A special note here is that from the web server you database host is called just "db"

image|458x500

Accessing Database with external tools

When you need to access you database with external management tools, you just specify the same connection info you have defined in the target options. With localhost as address and the database port specified (default 9906)

image|690x388

Different Servers per Project Target

Yes having different configuration is now all possible.

When you switch targets in Wappler - the previous servers will be auto stopped and the new one will auto start! It is that simple!

Conclusion

So now you can discover the great powers of Docker build into Wappler. Try it out and let is know what you think.

If you want to learn more about Docker and its insights, see: https://docs.docker.com/get-started/ https://docker-curriculum.com/

It is good to know as a background - you don't have to know all those commands our of your head! Wappler does it all for you!

Continue to read Part 2 of the full Docker tutorial.