Web TippsUse custom web fonts in Google Sheets charts(08.09.2026 um 17:05 Uhr)
Web TippsIntroducing the new 1Password App for Google Chat(08.09.2026 um 18:02 Uhr)
Web TippsUse custom web fonts in Google Sheets charts(08.09.2026 um 17:05 Uhr)
Web TippsIntroducing the new 1Password App for Google Chat(08.09.2026 um 18:02 Uhr)

🔧 Programmierung 🕛 vor 2 Monaten 3 Min Lesezeit
0

Deploying Cal.com Open-Source Calendly Alternative on Ubuntu 24.04

↗ Quelle (dev.to)
🗣️ Stimme:
📑 Inhaltsübersicht

Cal.com is an open-source scheduling platform (a self-hosted alternative to Calendly) that handles bookings, event types, and calendar integrations on infrastructure you control. This guide deploys Cal.com with a PostgreSQL backend using Docker Compose, with Traefik handling automatic HTTPS. By the end, you'll have Cal.com serving bookings securely at your domain.









Set Up the Directory Structure



1. Create the project directory:




CODE
$ mkdir calcom
$ cd calcom






2. Generate two random secrets:




CODE
$ openssl rand -base64 32
$ openssl rand -base64 32






Save the outputs — they go into .env as NEXTAUTH_SECRET and CALENDSO_ENCRYPTION_KEY.



3. Create the environment file:




CODE
$ nano .env









CODE
NODE_ENV=production

DOMAIN=cal.example.com
LETSENCRYPT_EMAIL=[email protected]

NEXT_PUBLIC_WEBAPP_URL=https://cal.example.com
NEXTAUTH_URL=https://cal.example.com
ALLOWED_HOSTNAMES=["cal.example.com"]
NEXTAUTH_URL_INTERNAL=http://calcom:3000
AUTH_TRUST_HOST=true

NEXTAUTH_SECRET=REPLACE_WITH_GENERATED_SECRET
CALENDSO_ENCRYPTION_KEY=REPLACE_WITH_GENERATED_ENCRYPTION_KEY

DATABASE_URL=postgresql://calcom:calcompass@postgres:5432/calcom
DATABASE_DIRECT_URL=postgresql://calcom:calcompass@postgres:5432/calcom

CALCOM_TELEMETRY_DISABLED=1
CAL_SIGNATURE_TOKEN=self-hosted












Deploy with Docker Compose



1. Add your user to the Docker group:




CODE
$ sudo usermod -aG docker $USER
$ newgrp docker






2. Create the Docker Compose manifest:




CODE
$ nano docker-compose.yaml









CODE
services:
traefik:
image: traefik:v3.6
container_name: traefik
restart: unless-stopped
command:
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
- "--entrypoints.websecure.address=:443"
- "--entrypoints.web.http.redirections.entrypoint.to=websecure"
- "--entrypoints.web.http.redirections.entrypoint.scheme=https"
- "--certificatesresolvers.le.acme.httpchallenge=true"
- "--certificatesresolvers.le.acme.httpchallenge.entrypoint=web"
- "--certificatesresolvers.le.acme.email=${LETSENCRYPT_EMAIL}"
- "--certificatesresolvers.le.acme.storage=/letsencrypt/acme.json"
ports:
- "80:80"
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./letsencrypt:/letsencrypt

postgres:
image: postgres:15
container_name: postgres
restart: unless-stopped
environment:
POSTGRES_USER: calcom
POSTGRES_PASSWORD: calcompass
POSTGRES_DB: calcom
volumes:
- ./postgres-data:/var/lib/postgresql/data

calcom:
image: calcom/cal.com:v6.2.0
container_name: calcom
env_file:
- .env
depends_on:
- postgres
expose:
- "3000"
labels:
- "traefik.enable=true"
- "traefik.http.routers.calcom.rule=Host(`${DOMAIN}`)"
- "traefik.http.routers.calcom.entrypoints=websecure"
- "traefik.http.routers.calcom.tls=true"
- "traefik.http.routers.calcom.tls.certresolver=le"
- "traefik.http.services.calcom.loadbalancer.server.port=3000"
volumes:
- ./calcom-data:/data/app/.data
restart: unless-stopped






3. Start the services:




CODE
$ docker compose up -d






4. Verify the services are running:




CODE
$ docker compose ps
$ docker compose logs calcom












Complete the Setup Wizard




  1. Navigate to https://cal.example.com/auth/setup.

  2. Fill in administrator username, full name, email, and password.

  3. Accept the AGPLv3 license option.

  4. Pick integrations and complete profile (timezone, calendars, video conferencing).

  5. Set availability and event types.









Create and Test a Booking




  1. Open the sidebar and select Event Types → New.

  2. Fill in title, description, and duration.

  3. Copy the booking URL, open it in an incognito window, pick a slot, and confirm.

  4. Refresh the Bookings view to see the new event appear.









Next Steps



Cal.com is running and served securely over HTTPS. From here you can:




  • Connect Google, Microsoft 365, or Apple calendars for two-way sync

  • Add team event types with round-robin or collective scheduling

  • Configure webhooks and Zapier triggers for downstream automation



For the full guide with additional tips, visit the original article on Vultr Docs.

Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf dev.to.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
3 Quellen
Use custom web fonts in Google Sheets charts
2 Quellen
Introducing the new 1Password App for Google Chat
1 Quelle
Context-aware access controls are available for Gemini Enterprise in the Admin console
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Deploying Cal.com Open-Source Calendly Alternative on Ubuntu 24.04

Thematisch verwandte Begriffe: Deploying, Calcom, OpenSource, Calendly · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...