Connect Your Repository

Connect your GitHub or GitLab repository to ScallerFox to enable automated deployments.

Supported Git Providers

GitHub

Connect your GitHub repository using OAuth. ScallerFox will request access to read your repositories.

GitLab

Connect your GitLab repository using OAuth. Supports both GitLab.com and self-hosted GitLab instances.

How to Connect Repository

1

Create Git PAT (Personal Access Token)

First, you need to create a Personal Access Token (PAT) for your Git provider. Go to Git PATs in the dashboard sidebar, then click "Create PAT".

Why use PAT?

  • One PAT can be reused for multiple repositories
  • More secure than storing tokens in each repository
  • Easy to manage and rotate when needed

To create a PAT:

  • GitHub: Go to Settings → Developer settings → Personal access tokens → Generate new token
  • GitLab: Go to Preferences → Access Tokens → Create personal access token
  • • Required permissions: repo (read access)
2

Go to Repositories

Navigate to Repositories in the dashboard sidebar, then click "Create Repository".

3

Select PAT and Repository

In the create repository form:

  • Select the PAT you created from the dropdown
  • Enter your Git Repository URL (e.g., https://github.com/user/repo.git)
  • Select the Branch you want to deploy (usually main or master)

Note: ScallerFox will validate that the PAT has access to the repository before saving. The PAT is stored securely and encrypted.

4

Repository Created

Once created, your repository will appear in the list. You can now use this repository when creating applications. The PAT will be automatically used for deployments.

Tip: You can reuse the same PAT for multiple repositories. This makes it easier to manage access tokens.

Repository Requirements

Required: Dockerfile

Your repository must contain a Dockerfile in the root directory. This tells ScallerFox how to build your application container.

Example Dockerfile (Node.js):

FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 8080
CMD ["node", "server.js"]

Example Dockerfile (Python):

FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
EXPOSE 8080
CMD ["python", "app.py"]

Best Practices

  • Use .dockerignore: Exclude unnecessary files (node_modules, .git, etc.) to speed up builds.
  • Multi-stage builds: Use multi-stage Dockerfiles to reduce image size.
  • Health checks: Implement health check endpoints for better monitoring.
  • Environment variables: Store sensitive data in ScallerFox environment variables, not in code.

Repository Connected?

Now you're ready to create an application and deploy it.

Create Application