What are the deployment methods?
SSLcat offers several flexible deployment methods to suit various environments, from local development to large-scale production systems.
1. Single Binary Executable
Run the following command to download and install the latest version:
# Download the binary (example for Linux amd64)
wget https://sslcat.com/xurenlu/sslcat/releases/download/v1.3.16-rc10/sslcat_v1.3.16-rc10_linux-amd64.tar.gz
# Unpack
tar -xzf sslcat_v1.3.16-rc10_linux-amd64.tar.gz
# Install to system path
sudo install -m 0755 sslcat /usr/local/bin/sslcat
2. One-Liner Install Script
For Linux systems, we provide a convenient script to automatically download and install the most suitable version for your system.
curl -fsSL https://sslcat.com/xurenlu/sslcat/main/scripts/install-from-release-zh.sh | sudo bash -s -- -v 1.3.16-rc10
3. Docker
We provide official Docker images on Docker Hub for easy containerized deployment. This is the recommended method for most production environments.
# Pull the image
docker pull sslcat/sslcat:latest
# Run the container
docker run -d \
--name sslcat \
-p 80:80 \
-p 443:443 \
-v /path/to/config:/etc/sslcat \
-v /path/to/certs:/var/lib/sslcat/certs \
sslcat/sslcat:latest
4. Docker Compose Deployment
Manage multi-container setups with Docker Compose:
# docker-compose.yml
version: '3.8'
services:
sslcat:
image: sslcat/sslcat:latest
container_name: sslcat
ports:
- "80:80"
- "443:443"
volumes:
- ./config:/etc/sslcat
- ./certs:/var/lib/sslcat/certs
restart: unless-stopped
environment:
- SSLCAT_CONFIG_FILE=/etc/sslcat/sslcat.conf
networks:
- sslcat-network
networks:
sslcat-network:
driver: bridge
5. Kubernetes Deployment
Deploy in a Kubernetes cluster:
# sslcat-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: sslcat
spec:
replicas: 2
selector:
matchLabels:
app: sslcat
template:
metadata:
labels:
app: sslcat
spec:
containers:
- name: sslcat
image: sslcat/sslcat:latest
ports:
- containerPort: 80
- containerPort: 443
volumeMounts:
- name: config
mountPath: /etc/sslcat
- name: certs
mountPath: /var/lib/sslcat/certs
volumes:
- name: config
configMap:
name: sslcat-config
- name: certs
persistentVolumeClaim:
claimName: sslcat-certs
6. Cloud Platform Deployment
Deploy SSLcat on cloud platforms:
- AWS - Use EC2 instances or ECS services
- Azure - Use virtual machines or container instances
- Google Cloud - Use Compute Engine or GKE
- Alibaba Cloud - Use ECS or Container Service
- Tencent Cloud - Use CVM or TKE
7. Load Balancing Deployment
Multi-instance load balancing deployment:
# Use Nginx as a load balancer
upstream sslcat_backend {
server 127.0.0.1:8080;
server 127.0.0.1:8081;
server 127.0.0.1:8082;
}
server {
listen 80;
listen 443 ssl;
location / {
proxy_pass http://sslcat_backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
8. High Availability Deployment
Build a high-availability SSLcat cluster:
- Multi-instance Deployment - Deploy multiple SSLcat instances
- Load Balancing - Use a load balancer to distribute traffic
- Health Checks - Configure health check mechanisms
- Failover - Automatic failover and recovery
9. Development Environment Deployment
Quick deployment in a local development environment:
# Using Homebrew (macOS)
brew install sslcat
# Using a package manager (Ubuntu/Debian)
sudo apt update
sudo apt install sslcat
# Using Snap
sudo snap install sslcat
Deployment Recommendations
Choose the appropriate deployment method based on your use case:
- Testing Environment - Direct execution or Docker
- Development Environment - Package manager installation
- Production Environment - systemd service or Kubernetes
- Cloud Environment - Native cloud platform services
- High Availability - Multi-instance + Load Balancing
Deployment Checklist
Items to check after deployment:
- Service Status - Confirm the service is running correctly
- Port Opening - Check ports 80 and 443
- Firewall Configuration - Configure firewall rules
- SSL Certificate - Verify the SSL certificate status
- Proxy Configuration - Test the forwarding rules
- Monitoring and Alerting - Configure monitoring and alerts
Choosing the right deployment method ensures that SSLcat runs stably and efficiently in your environment.