Develop Swift server applications on Docker
This requires SCADE version 0.9.9.x or higher and Docker for Mac
Introduction
Swift is our #1 language for mobile client side development on Android and iOS. However, a growing number of developers are using Swift on the server as well. To support this, we added Docker support to our IDE. Now you can easily code server applications and run them on Docker.
Prerequisites
We currently support the following setup
- Apple Mac OSX
- XCode 10
- Docker for Mac (latest version)
- Swift 4.1 (Swift 4.2 few weeks away)
Installation
- Just make sure Docker for Mac is installed and running
Running your Hello World server app
Here the steps to creating your first Hello World REST service
Start SCADE IDE
Create a new Swift Server project
a. Select File|New and choose Kitura Project
b. Specify the name of the server project and choose Basic type. Then press Finish.
c. The server project is created. Open the main file and you see a basic HTTP route implementation
import statement
As you can see, the import statement is marked as having an error. This message will disappear after compiling the project
Compile project
a. Select the project
Pick a project to compile. Use the project picker and select your project with Mac Docker as the target.
b. Select Docker on Mac
c. Press the compile button
When pressing the compile button, we download all docker images, sources and compile the project. Depending on your internet connection speed, this takes a while (2 - 10 minutes). However, this is only for the initial startup, after that, compilation and running the server app is immediate
d. After downloading and compiling, you see the final compilation output on the screen
First time, creating the project takes time
When you compile your server project for the first time, this will take some time (3-5 minutes), because a lot happens under the cover:
- The Swift docker file is downloaded
- The Server Framework is downloaded
- The project is compiled
Run your server app
a. Press the run button
b. You see the docker command for running your server!
c. Open your first server app on http://localhost:8080
Congratulation. Your first Swift server app is running on Docker
Updated about 6 years ago