Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Swift HTTP Server

Simple HTTP implementation for Swift using POSIX socket API. Running on Mac OS X and Linux.

For Mac users: You can install new Swift compiler following this instruction then you will be able to build the code directly on your Xcode.


Run the following command to compile the source:

swift build


After successfully compile, run the server with:


Now, go to http://localhost:8080 to test, the response should be: Hello World

Setting up Docker container from Dockerfile

Go to docker folder and run to build swiftbox image

cd docker

Run new container from swiftbox image, mount your working directory and expose the port:

docker run -it -p 8080:8080 -v /path/to/your/host/working/folder:/src swiftbox

Now you can go to /src folder, which linked to your /path/to/your/host/working/folder to start using:

cd /src
swift build

Setting up Docker container for Swift yourself

Create new ubuntu container, don't forget to expose port 8080 or whatever you want, to test the HTTP server

docker run -it -p 8080:8080 -v /path/to/your/host/working/folder:/src ubuntu

When you're in the new created ubuntu container, install some dependencies with apt-get:

apt-get update && apt-get install wget build-essential clang rsync libpython-all-dev libedit-dev libicu52 libxml2-dev

Now, download the latest Swift release for Linux:


Extract the downloaded zip:

tar xzf swift-2.2-SNAPSHOT-2015-12-10-a-ubuntu14.04.tar.gz

Use rsync to move all the packages to your /usr folder:

rsync -a -v swift-2.2-SNAPSHOT-2015-12-10-a-ubuntu14.04/usr/ /usr

You can delete the downloaded files (optional):

rm -rf swift-2.2-SNAPSHOT-2015-12-10-a-ubuntu14.04*

Now, you have Swift installed, test it with the following command:

swift --version


The source code is published under MIT license. Please see for more detail.