# Deploying a Clojure web app with Pallet

DevFeed: [Deploying a Clojure web app with Pallet](<https://devfeed.tech/articles/deploying-a-clojure-web-app-with-pallet-32114.md>)

Original publisher: [Read original article](<https://adambard.com/blog/deploying-a-clojure-project-with-pallet/>)

Published: 2016-01-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Adam Bard](<https://devfeed.tech/sources/adam-bard.md>)

Topics: [Clojure](<https://devfeed.tech/topics/clojure.md>), [DevOps](<https://devfeed.tech/topics/devops.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [ssh](<https://devfeed.tech/topics/ssh.md>), [nginx](<https://devfeed.tech/topics/nginx.md>), [Digital Ocean](<https://devfeed.tech/topics/digital-ocean.md>)

Tags: [clojure](<https://devfeed.tech/tags/clojure.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [devops](<https://devfeed.tech/tags/devops.md>), [digitalocean](<https://devfeed.tech/tags/digitalocean.md>), [nginx](<https://devfeed.tech/tags/nginx.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [web-app](<https://devfeed.tech/tags/web-app.md>)

## AI overview

This tutorial explains how to deploy a Clojure web application with Pallet, focusing on Pallet's task model and concepts such as actions, plans, phases, server specs, and crates. It also describes limitations in Pallet's incomplete documentation and its incompatibility with the JClouds version needed for DigitalOcean's v2 API, so the article uses manually provisioned servers through SSH.

## Source excerpt

Pallet is a Clojure DevOps platform/library designed to automate blah blah blah. We all know what these things are supposed to do, the question is how they do it, and Pallet takes the agreeable tack of just being a Clojure library that you can run in a repl and do devops stuff.