Installing via docker-compose

The official Omnixent repository includes a useful docker-compose file that can be used and customized for launching your own Omnixent instance in a matter of minutes.

The docker-compose file will include three different images:

  1. Omnixent: the official Omnixent image, to be pulled from Dockerhub directly.

  2. Redis: to be used as a caching layer. It is optional, and you can disable it if you'd like to.

  3. Caddy: high-performance reverse-proxy for exposing Omnixent to the outside world.

Here is how the docker-compose.yml file should look like:

docker-compose.yml
version: '3.7'

services:
  node:
    container_name: omnixent-node
    image: omnixent/omnixent:v0.0.36
    ports:
      - 3000:3000
    restart: unless-stopped
    links:
      - redis
    environment:
      - NODE_ENV=production
      - REDIS_URL=redis://redis:6379
    networks:
      - caddynet

  caddy:
    image: abiosoft/caddy
    container_name: omnixent-caddy
    cap_add:
      - CAP_NET_BIND_SERVICE
    ports:
      - 80:80
      - 443:443
    expose:
      - 80
      - 443
    links:
      - node
    depends_on:
      - node
    volumes:
      - ./Caddyfile:/etc/Caddyfile
    command: -conf /etc/Caddyfile
    environment:
      CA_URL: https://acme-staging-v02.api.letsencrypt.org/directory
    restart: always
    networks:
      - caddynet

  redis:
    image: "redis:alpine"
    container_name: omnixent-cache
    expose:
      - 6379
    networks:
      - caddynet

networks:
  caddynet:
    driver: bridge

Last updated

Was this helpful?