Skip to main content

Deploying to Dev Environment

info

These instructions have been tested on MacOS, Windows 11/10

Goal

Setting up Project in lightweight with your specified configuration and configuration

What you need to do is configure the project as your purposes:

  • Data Engineering (DataEngr)
  • Data Operation (DataOps)
  • Data Infrastructure (DataInfra)

Environments

Most of servies are configured and contained in the Docker images and containers.

There are a number of mandatory software required:

  1. Docker Desktop & Docker Compose Environment
  • If you are Mac user, you can us orbstack to replace the Docker Desktop with advanced features)

  • If you are Windows user, you can make sure to select the options:

    • Enable Hyper-V Windows Features
    • Install required Windows components for WSL 2 when prompted. After installation, it will require to reboot your computer.
  1. Python (Python 3.8 or upper)
  • Pyenv for setting venv
  • Poetry for alternatively creating venv
  1. NodeJS (Node 8 or upper)

Setup and launch Project

  • After Docker, Python, NodeJS has installed, (Ignore Python and NodeJS if you are not wanted to develop)

  • Get Started locally by running

    git clone --depth=1 https://github.com/longbuivan/stringx.git

    # switch into StringX directory
    cd stringx

    If you are Data Engieer, you can:

    cd stringx/devops/infra
    make data-core-up

    If you are Data Ops, you can:

    cd stringx/devops/dataops
    make data-ops-up

    If you are Data Infra, you can:

    cd stringx/devops/infra
    make data-infra-up
  • In your browser, just open [http://localhost:3000/login] Using default username stringx and password password.

Once you deploy StringX to your own server, be sure to create your own authentication method (OAuth2, Token, Usr/Pwd,...) In this project, is using Google Firebase authentication

  1. Place you project-id.json into app/src folder.
  2. Change your firebase.js configuration
const firebaseConfig = {
apiKey: 'Key',
authDomain: 'project-domain.firebaseapp.com',
projectId: 'projec-id',
};
  • Start setup integration and TransferData job for moving data!

Troubleshooting

If you encounter any issues, just connect to me. Our community will help! We also have a troubleshooting section in our docs for common problems.