Turn your application code into state-of-the-art Docker images without having to write a single line of Docker syntax. Our CI/CD pipelines then automatically build, test, and deploy every new version of your applications.Start 14-day free trial
Applications in Smoothy are installed as Docker containers. This means that before you can install your application code on your deployment, you first need to go through some preparation steps.
The first step is to create a Dockerfile for your application. This is a file defining the steps that need to be executed in order to prepare a virtual machine to run your application code.
If you are comfortable writing your own Dockerfile, you can use your own custom Dockerfile. However, if you are new to Docker or just want to focus on building applications rather than dealing with this kind of low-level configuration, you can use one of our click-to-install Dockerfile templates.
All our templates are carefully crafted by the Smoothy team, based on years of expertise and best practices. Moreover, they can be tweaked to your needs with only a few clicks of a button.
We are working hard to extend and improve our cloud platform on a daily basis. If you believe we can improve your workflow by adding a specific Dockerfile template, please let us know and we will be happy to help you out.
The second step in preparing your application code for installation as a Docker container is building it into a Docker image. You can think of this image as a self-contained read-only template that is built based on the steps defined in the Dockerfile. The Docker image contains your application's source code, some configuration files, and any system library or external dependencies the application needs in order to run.
Every time you release a new version of your application, you need to build a new Docker image. To streamline this process, Smoothy seamlessly integrates with your code provider and automates the entire build process.
Before you build a Docker image, you usually want to verify that your application code is working as expected. Therefore, Smoothy allows you to set up your own build pipeline to run tests against your application. Only if all the tests succeed, the build will continue.
You can extend the build pipeline with one or more stages, which can be configured to run in sequence or in parallel. For every stage, you can define the context in which you want to run your tests, securely pass any sensitive data as environment variables, and easily spin up services such as MySQL and Redis.
The master branch of the code repository is cloned at the beginning of the image build. All the tasks and tests in the consequent stages run in the context of the application code.
Run PHPUnit tests
Run security checks
Your application code will be build as a Laravel 5 Docker image. The image will be stored on a private registry of Smoothy and can be used to deploy your application as a Docker container on your servers. If you have already deployed one or more applications using this image, the applications are automatically updated with the new version of the image.
You can easily following along with and debug the execution of the pipeline, using the real-time execution logs that are available via the Smoothy interface.
$ docker build --pull -f Dockerfile -t registry.smoothy.cloud/pipeline-36bc3a23-a846-440e-80c6-057544e85eef:latest .
Step 1/4 : FROM node:alpine
alpine: Pulling from library/node
8e402f1a9c57: Pulling fs layer
682f5b61546c: Pulling fs layer
c482ca3e1e59: Pulling fs layer
c482ca3e1e59: Verifying Checksum
c482ca3e1e59: Download complete
8e402f1a9c57: Verifying Checksum
8e402f1a9c57: Download complete
682f5b61546c: Verifying Checksum
682f5b61546c: Download complete
8e402f1a9c57: Pull complete
682f5b61546c: Pull complete
c482ca3e1e59: Pull complete
Status: Downloaded newer image for node:alpine
Step 2/4 : COPY . /app
Step 3/4 : WORKDIR /app
---> Running in 73c075fa922d
Removing intermediate container 73c075fa922d
Step 4/4 : RUN npm install
---> Running in a52c79fbdff7
added 1221 packages from 505 contributors in 32.834s
Smoothy is an intelligent all-in-one cloud platform that enables you to set up and manage your own hosting environment on top of the world's leading cloud providers without having to learn all the in's and out's of the cloud. Based on years of experience and established best practices, Smoothy takes as much of the work as possible out of your hands and translates all the complex cloud primitives into easy to understand visual forms. This way you have to spend hours instead of months on migrating to the cloud and can focus entirely on your core business: delivering great software.
Due to the enormous potential of modern cloud technologies, many companies, both large and small, are migrating to the cloud. Wait no longer, let Smoothy help you adopt modern cloud technologies and arm yourself against the challenges of today and tomorrow.Start 14-day free trial
All rights reserved. Yes. All of them.