Sign inSign up

vagkaefer/genieacs-docker

By vagkaefer

•Updated over 1 year ago

A docker image to run GenieACS (unofficial)

Image
Networking
Content management system
Monitoring & observability
1

5.7K

vagkaefer/genieacs-docker repository overview

Create a .env

MONGO_ADMIN_USER=
MONGO_ADMIN_PASSWORD=
MONGO_USER=
MONGO_PASSWORD=
UI_JWT_SECRET=

docker-compose.yaml

version: "3.9"

services:

    autoheal:
        restart: unless-stopped
        image: willfarrell/autoheal
        environment:
            - AUTOHEAL_CONTAINER_LABEL=all
        volumes:
            - /var/run/docker.sock:/var/run/docker.sock

    mongo:
        image: mongo:6.0
        restart: unless-stopped
        container_name: "mongo"
        environment:
            - ME_CONFIG_MONGODB_ADMINUSERNAME=${MONGO_ADMIN_USER}
            - ME_CONFIG_MONGODB_ADMINPASSWORD=${MONGO_ADMIN_PASSWORD}
            - MONGO_INITDB_ROOT_USERNAME=${MONGO_USER}
            - MONGO_INITDB_ROOT_PASSWORD=${MONGO_PASSWORD}
            - MONGO_DATA_DIR=/data/db
            - MONGO_LOG_DIR=/var/log/mongodb
        volumes:
            - mongo-data:/data/db
            - mongo-config:/data/configdb
        networks:
            - genieacs
        expose:
            - "27017"
        healthcheck:
            test: echo 'db.runCommand("ping").ok' | mongo ${MONGO_USER}:${MONGO_PASSWORD}@localhost --quiet
            interval: 15s
            timeout: 10s
            retries: 5
            start_period: 30s

    genieacs:
        depends_on:
            - "mongo"
        image: vagkaefer/genieacs-docker
        restart: unless-stopped
        container_name: "genieacs"
        deploy:
            restart_policy:
                condition: on-failure
                delay: 5s
                max_attempts: 3
                window: 120s
            resources:
                limits:
                    cpus: '2'
                    memory: 4G
                reservations:
                    cpus: '0.1'
                    memory: 1G
        environment:
            - GENIEACS_UI_JWT_SECRET=${UI_JWT_SECRET}
            - GENIEACS_CWMP_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-cwmp-access.log
            - GENIEACS_NBI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-nbi-access.log
            - GENIEACS_FS_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-fs-access.log
            - GENIEACS_UI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-ui-access.log
            - GENIEACS_DEBUG_FILE=/var/log/genieacs/genieacs-debug.yaml
            - GENIEACS_EXT_DIR=/opt/genieacs/ext
            - GENIEACS_MONGODB_CONNECTION_URL=mongodb://${MONGO_USER}:${MONGO_PASSWORD}@mongo
            # - GENIEACS_UI_SSL_CERT=/opt/genieacs/ssl/live/domain.io.local/fullchain.pem
            # - GENIEACS_UI_SSL_KEY=/opt/genieacs/ssl/live/domain.io.local/privkey.pem
            # - GENIEACS_CWMP_SSL_CERT=/opt/genieacs/ssl/live/domain.io.local/fullchain.pem
            # - GENIEACS_CWMP_SSL_KEY=/opt/genieacs/ssl/live/domain.io.local/privkey.pem
            # - GENIEACS_NBI_SSL_CERT=/opt/genieacs/ssl/live/domain.io.local/fullchain.pem
            # - GENIEACS_NBI_SSL_KEY=/opt/genieacs/ssl/live/domain.io.local/privkey.pem
            # - GENIEACS_FS_SSL_CERT=/opt/genieacs/ssl/live/domain.io.local/fullchain.pem
            # - GENIEACS_FS_SSL_KEY=/opt/genieacs/ssl/live/domain.io.local/privkey.pem
        ports:
            - "7500:7547"
            # - "7557:7557" #TODO remove in production or use firewall
            - "7567:7567"
            - "3000:3000"
        expose:
            - 7557
        networks:
            - genieacs
        volumes:
            - genieacs-logs:/opt/genieacs/logs
            - supervisor-logs:/opt/genieacs/supervisor/logs
            # - ./docker/certbot/conf:/opt/genieacs/ssl
        healthcheck:
            test:
                [
                    "CMD",
                    "wget",
                    "-O",
                    "/dev/null",
                    "http://localhost:3000"
                ]
            interval: 2m
            timeout: 15s
            retries: 3
            start_period: 30s
volumes:

    mongo-data:
    mongo-config:
    genieacs-logs:
    supervisor-logs:
    
networks:
    genieacs:
        driver: bridge

Tag summary

Content type

Image

Digest

sha256:fd2203f9d…

Size

61.5 MB

Last updated

over 1 year ago

docker pull vagkaefer/genieacs-docker