Docker Parse Server

Provide docker images and docker stack for parse-server npm versions and latest commit
Alternatives To Docker Parse Server
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Rocket.chat35,129
8 hours ago5August 18, 20223,259otherTypeScript
The communications platform that puts data protection first.
Appwrite30,266
8 hours ago49September 14, 2022668bsd-3-clauseTypeScript
Secure Backend Server for Web, Mobile & Flutter Developers 🚀 AKA the 100% open-source Firebase alternative.
Hydra13,894815 hours ago1May 08, 201973apache-2.0Go
OpenID Certified™ OpenID Connect and OAuth Provider written in Go - cloud native, security-first, open source API security for your infrastructure. SDKs for any language. Works with Hardware Security Modules. Compatible with MITREid.
Prefect11,6091708 hours ago162July 05, 2022668apache-2.0Python
The easiest way to orchestrate and observe your data pipelines
Rap2 Delos7,400
5 months ago73mitTypeScript
阿里妈妈前端团队出品的开源接口管理工具RAP第二代
Jupyterhub7,120255115a day ago66June 06, 2022181otherPython
Multi-user server for Jupyter notebooks
Nakama6,956111 hours ago72November 28, 2020103apache-2.0Go
Distributed server for social and realtime games and apps.
Dockercraft6,300
2 years agoJuly 12, 202218apache-2.0Lua
Docker + Minecraft = Dockercraft
Heimdall5,678
20 days ago23mitPHP
An Application dashboard and launcher
Docker Ipsec Vpn Server5,377
6 days ago1otherShell
Docker image to run an IPsec VPN server, with IPsec/L2TP, Cisco IPsec and IKEv2
Alternatives To Docker Parse Server
Select To Compare


Alternative Project Comparisons
Readme

Docker ❤ Parse

Docker Pulls Docker Stars Docker Tag License Travis CI Gitter Chat

☁️ One-Click Deploy

Deploy Deploy to Azure Deploy to AWS Deploy to Scalingo Deploy to Docker Cloud

⭐️ Features

  • [x] Parse Server with MongoDB
  • [x] Parse Cloud Code via git with auto rebuild
  • [x] Parse Push Notification : iOS, Android
  • [x] Parse Live Query
  • [x] Parse Dashboard
  • [x] Tested Docker Image
  • [x] Deploy with Docker
  • [x] Deploy with Docker Compose
  • [x] Deploy with one click
  • [x] GraphQL support GRAPHQL_SUPPORT=true, GRAPHQL_SCHEMA=YOUR_SCHEMA_URL (default to ./cloud/graphql/schema.js)

📺 Overview

Parse Server Diagram

🙈 Sneak Preview

Screencast

🚀 Deployments

Note

📎 Deploy with Docker

$ docker run -d -p 27017:27017 --name mongo mongo

$ docker run -d                                \
             -e APP_ID=${APP_ID}         \
             -e MASTER_KEY=${MASTER_KEY} \
             -p 1337:1337                      \
             --link mongo                      \
             --name parse-server               \
             yongjhih/parse-server

$ docker run -d                                \
             -p 2022:22                        \
             --volumes-from parse-server       \
             --name parse-cloud-code-git       \
             yongjhih/parse-server:git

# Test parse-server
$ curl -X POST \
  -H "X-Parse-Application-Id: {appId}" \
  -H "Content-Type: application/json" \
  -d '{}' \
  http://localhost:1337/parse/functions/hello

$ docker run -d \
             -e APP_ID=${APP_ID}         \
             -e MASTER_KEY=${MASTER_KEY} \
             -e SERVER_URL=http://localhost:1337/parse \
             -p 4040:4040                      \
             --link parse-server               \
             --name parse-dashboard            \
             yongjhih/parse-dashboard

# The above command will asuume you will later create a ssh 
# and log into the dashboard remotely in production. 
#  However, to see the dashboard instanly using either
#  localhost:4040 or someip:4040(if hosted somewhere remotely)
# then you need to add extra option to allowInsecureHTTP like
# It is also required that you create username and password 
# before accessing the portal else you cant get in

$  docker run -d \
        -e PARSE_DASHBOARD_CONFIG='{"apps":[{"appId":"<appid>","serverURL":"http://localhost:1337/parse","masterKey":"<masterkey>","appName":"<appname>"}],"users":[{"user":"<username>","pass":"<password>"}]}' \
        -e PARSE_DASHBOARD_ALLOW_INSECURE_HTTP=1  \
        -p 4040:4040                      \
        --link parse-server               \
        --name parse-dashboard            \
        yongjhih/parse-dashboard

📎 Deploy with Docker Compose

$ wget https://github.com/yongjhih/docker-parse-server/raw/master/docker-compose.yml
$ APP_ID=YOUR_APP_ID MASTER_KEY=YOUR_MASTER_KEY PARSE_DASHBOARD_ALLOW_INSECURE_HTTP=1 SERVER_URL=http://localhost:1337/parse docker-compose up -d

Note

  • We use PARSE_DASHBOARD_ALLOW_INSECURE_HTTP=1 to allow insecure via development environment.
  • $ wget https://github.com/yongjhih/docker-parse-server/raw/master/docker-compose.yml -O - | APP_ID=YOUR_APP_ID MASTER_KEY=YOUR_MASTER_KEY docker-compose up -d -f - # not supported for docker-compose container

📎 Deploy to Cloud Services

⚡️ Advance topics

🔥 Server Side Developments

How to push cloud code to server
Screencast - git

# This command wil create a SSH keys for you as
#  ~/.ssh/id_rsa.pub and another private key.
# you can leave the options balnk by pressing enter.

$ ssh-keygen -t rsa

# If git container name is `parse-cloud-code-git`
$ docker exec -i parse-cloud-code-git ssh-add-key < ~/.ssh/id_rsa.pub

# port 2022, repo path is `/parse-cloud-code`
$ git clone ssh://[email protected]:2022/parse-cloud-code
$ cd parse-cloud-code
$ echo "Parse.Cloud.define('hello', function(req, res) { res.success('Hi, git'); });" > main.js
$ git add main.js && git commit -m 'Update main.js'
$ git push origin master

$ curl -X POST \
  -H "X-Parse-Application-Id: ${APP_ID}" \
  -H "Content-Type: application/json" \
  -d '{}' \
  http://localhost:1337/parse/functions/hello

📱 Client Side Developments

You can use the REST API, the JavaScript SDK, and any of our open-source SDKs:

📎 curl example

curl -X POST \
  -H "X-Parse-Application-Id: YOUR_APP_ID" \
  -H "Content-Type: application/json" \
  -d '{"score":1337,"playerName":"Sean Plott","cheatMode":false}' \
  http://localhost:1337/parse/classes/GameScore

curl -X POST \
  -H "X-Parse-Application-Id: YOUR_APP_ID" \
  -H "Content-Type: application/json" \
  -d '{}' \
  http://localhost:1337/parse/functions/hello

curl -H "X-Parse-Application-Id: YOUR_APP_ID" \
     -H "X-Parse-Master-Key: YOUR_MASTER_KEY" \
     -H "Content-Type: application/json" \
     http://localhost:1337/parse/serverInfo

📎 JavaScript example

Parse.initialize('YOUR_APP_ID','unused');
Parse.serverURL = 'https://whatever.herokuapp.com';
var obj = new Parse.Object('GameScore');
obj.set('score',1337);
obj.save().then(function(obj) {
  console.log(obj.toJSON());
  var query = new Parse.Query('GameScore');
  query.get(obj.id).then(function(objAgain) {
    console.log(objAgain.toJSON());
  }, function(err) {console.log(err); });
}, function(err) { console.log(err); });

📎 Android example

//in your application class

Parse.initialize(new Parse.Configuration.Builder(getApplicationContext())
        .applicationId("YOUR_APP_ID")
        .clientKey("YOUR_CLIENT_ID")
        .server("http://YOUR_SERVER_URL/parse/")   // '/' important after 'parse'
        .build());

  ParseObject testObject = new ParseObject("TestObject");
  testObject.put("foo", "bar");
  testObject.saveInBackground();

📎 iOS example

class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject:AnyObject]?) -> Bool {
        let configuration = ParseClientConfiguration {
            $0.applicationId = "YOUR_APP_ID"
            $0.clientKey = "YOUR_CLIENT_ID"
            $0.server = "http://YOUR_SERVER_URL/parse"
        }
        Parse.initializeWithConfiguration(configuration)
    }
}

📎 GraphQL

Run with GraphQL support.

GRAPHQL_SUPPORT=true APP_ID=YOUR_APP_ID MASTER_KEY=YOUR_MASTER_KEY SERVER_URL=http://localhost:1337/parse docker-compose up -d

Make sure ./cloud/graphql/schema.js is pushed to cloud code.
Then navigate to http://localhost:1337/graphql?query=%7B%0A%20%20hello%0A%7D%0A

👀 See Also

👍 Contributors & Credits

didierfranc ArnaudValensi gerhardsletten acinader kandelvijaya vitaminwater cleever katopz

Popular Docker Projects
Popular Server Projects
Popular Virtualization Categories

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Javascript
Docker
Server
Deployment
Cloud Computing
Graphql