Docker Compose (single machine / development) Source Deploy

In this guide, you will have everything up and running on one machine and using the latest code.
It is not recommended however for production use.

Requirements:

Steps:

  1. Configure services by following our Configuration guide and changing:
  • backend/.env.override.composed file for backend service configuration
  • frontend/.env.override.composed file for frontend configuration
  1. Start everything up with .<checkout>/scripts/cli clean-start
  2. Verify that everything is up and running with docker ps -al and you should see something similar to:
CONTAINER ID   IMAGE                          COMMAND                  CREATED          STATUS          PORTS                                                                                      NAMES
1a7468030283   crowd_python-worker            "python -u python_wo…"   3 seconds ago    Up 2 seconds                                                                                               crowd_python-worker_1
1b281bf17caf   crowd_premium-python-worker    "python -u worker.py"    4 seconds ago    Up 3 seconds                                                                                               crowd_premium-python-worker_1
8bb4af03b8c0   crowd_premium-job-generator    "docker-entrypoint.s…"   6 seconds ago    Up 4 seconds                                                                                               crowd_premium-job-generator_1
a2a5d34b989f   crowd_premium-api              "python -u -m flask …"   7 seconds ago    Up 6 seconds                                                                                               crowd_premium-api_1
11069cda2018   crowd_nodejs-worker            "docker-entrypoint.s…"   9 seconds ago    Up 8 seconds                                                                                               crowd_nodejs-worker_1
1004b13a0b13   crowd_job-generator            "docker-entrypoint.s…"   11 seconds ago   Up 10 seconds                                                                                              crowd_job-generator_1
649cf868c37a   crowd_frontend                 "docker-entrypoint.s…"   13 seconds ago   Up 11 seconds   0.0.0.0:8081->8081/tcp, :::8081->8081/tcp                                                  crowd_frontend_1
e10316454f86   crowd_conversations            "docker-entrypoint.s…"   14 seconds ago   Up 13 seconds   0.0.0.0:3000->3000/tcp, :::3000->3000/tcp, 0.0.0.0:24678->24678/tcp, :::24678->24678/tcp   crowd_conversations_1
72d358a90f15   crowd_api                      "docker-entrypoint.s…"   15 seconds ago   Up 14 seconds   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp                                                  crowd_api_1
1eb414ef1892   postgres:13.6-alpine           "docker-entrypoint.s…"   27 seconds ago   Up 25 seconds   0.0.0.0:5432->5432/tcp, :::5432->5432/tcp                                                  crowd_db_1
909555a0eb0f   scireum/s3-ninja:8.0.0         "/bin/bash -c /home/…"   27 seconds ago   Up 24 seconds   0.0.0.0:9000->9000/tcp, :::9000->9000/tcp                                                  crowd_s3_1
dc8b809de9d4   getmeili/meilisearch:v0.27.2   "tini -- /bin/sh -c …"   27 seconds ago   Up 24 seconds   0.0.0.0:7700->7700/tcp, :::7700->7700/tcp                                                  crowd_search-engine_1
f7907e713172   crowd_sqs                      "/sbin/tini -- /opt/…"   27 seconds ago   Up 25 seconds   0.0.0.0:9324-9325->9324-9325/tcp, :::9324-9325->9324-9325/tcp                              crowd_sqs_1
f0618dcb5e94   nginx:alpine                   "/docker-entrypoint.…"   27 seconds ago   Up 25 seconds   80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp                                              crowd_nginx_1
1923d7998e31   cubejs/cube                    "docker-entrypoint.s…"   27 seconds ago   Up 24 seconds   0.0.0.0:4000->4000/tcp, :::4000->4000/tcp, 0.0.0.0:3001->3000/tcp, :::3001->3000/tcp       crowd_cubejs_1
  1. Open up our web app at http://localhost:8081/auth/signup and follow the onboarding guide.

🚧

Warning

Please be aware that using this guide all dependencies will be running on a single machine as well. Some of them (AWS SQS & S3) will be emulated or replaced with an open-source equivalent. Because of them, it is not recommended to use this guide to run our applications for production purposes.

Docker Compose files

If you need to modify or configure services running like this there are a few docker-compose YAML files that need to be mentioned here:

You can modify these files to affect the port mapping, volume binding, and much more.