Spaces:
Runtime error
Install No Code Architect Toolkit with Docker
Installation of No Code Architect Toolkit with Docker offers the following advantages:
- Install No Code Architect Toolkit in a clean environment.
- Simplify the setup process.
- Avoid compatibility issues across different operating systems with Docker's consistent environment.
Info
If your domain/subdomain is already pointed to the server, start at step 2.
If you have already installed Docker and Docker-Compose, start at step 3.
1. DNS Setup
Point your domain/subdomain to the server. Add an A record to route the domain/subdomain accordingly:
- Type: A
- Name: The desired domain/subdomain
- IP Address:
<IP_OF_YOUR_SERVER>
2. Install Docker
This can vary depending on the Linux distribution used. Below are instructions for Ubuntu:
Set up Docker's APT Repository
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to APT sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Install the Docker Packages
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
3. Create Docker Compose File
Create a docker-compose.yml file and paste the following configuration:
With SSL Support
Enables SSL/TLS for secure, encrypted communications. Ideal for those wanting a hands-off approach to SSL setup.
services:
traefik:
image: "traefik"
restart: unless-stopped
command:
- "--api=true"
- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
- "--entrypoints.web.http.redirections.entryPoint.to=websecure"
- "--entrypoints.web.http.redirections.entrypoint.scheme=https"
- "--entrypoints.websecure.address=:443"
- "--certificatesresolvers.mytlschallenge.acme.tlschallenge=true"
- "--certificatesresolvers.mytlschallenge.acme.email=${SSL_EMAIL}"
- "--certificatesresolvers.mytlschallenge.acme.storage=/letsencrypt/acme.json"
ports:
- "80:80"
- "443:443"
volumes:
- traefik_data:/letsencrypt
- /var/run/docker.sock:/var/run/docker.sock:ro
ncat:
image: stephengpope/no-code-architects-toolkit:latest
env_file:
- .env
labels:
- traefik.enable=true
- traefik.http.routers.ncat.rule=Host(`${APP_DOMAIN}`)
- traefik.http.routers.ncat.tls=true
- traefik.http.routers.ncat.entrypoints=web,websecure
- traefik.http.routers.ncat.tls.certresolver=mytlschallenge
volumes:
- storage:/var/www/html/storage/app
- logs:/var/www/html/storage/logs
restart: unless-stopped
volumes:
traefik_data:
driver: local
storage:
driver: local
logs:
driver: local
4. Create .env File
Create an .env file and configure it accordingly:
# The name of your application.
APP_NAME=NCAToolkit
# Debug mode setting. Set to `false` for production environments.
APP_DEBUG=false
# Your app's domain or subdomain, without the 'http://' or 'https://' prefix.
APP_DOMAIN=example.com
# Full application URL is automatically configured; no modification required.
APP_URL=https://${APP_DOMAIN}
# SSL settings
SSL_EMAIL=user@example.com
# API_KEY
# Purpose: Used for API authentication.
# Requirement: Mandatory.
API_KEY=your_api_key_here
# s3 Compatible Storage Env Vars
#
#S3_ACCESS_KEY=your_access_key
#S3_SECRET_KEY=your_secret_key
#S3_ENDPOINT_URL=https://your-endpoint-url
#S3_REGION=your-region
#S3_BUCKET_NAME=your-bucket-name
# Google Cloud Storage Env Variables
#
# GCP_SA_CREDENTIALS
# Purpose: The JSON credentials for the GCP Service Account.
# Requirement: Mandatory if using GCP storage.
#GCP_SA_CREDENTIALS=/path/to/your/gcp/service_account.json
# GCP_BUCKET_NAME
# Purpose: The name of the GCP storage bucket.
# Requirement: Mandatory if using GCP storage.
#GCP_BUCKET_NAME=your_gcp_bucket_name
# STORAGE_PATH
# Purpose: The base path for storage operations.
# Default: GCP
# Requirement: Optional.
#STORAGE_PATH=GCP
5. Start Docker Compose
Start No Code Architect Toolkit using the following command:
docker compose up -d
To view logs in real time:
docker compose logs -f
To stop the containers:
docker compose stop
To restart and reload env vars
First update your .env file with the correct values
Then run:
docker compose up -d --force-recreate ncat
6. Done
No Code Architect Toolkit is now accessible through the specified APP_URL. For example:
https://example.com