services:
    linkwarden:
        image: ghcr.io/linkwarden/linkwarden:latest
        container_name: ${CONTAINER_NAME}
        restart: always
        ports:
            - ${PANEL_APP_PORT_HTTP}:3000
        volumes:
            - ./data:/data/data
        networks:
            - 1panel-network
        environment:
            - DATABASE_URL=postgresql://postgres:${POSTGRES_PASSWORD}@postgres:5432/postgres
            - NEXTAUTH_URL=http://localhost:3000/api/v1/auth
            - NEXTAUTH_SECRET=${NEXTAUTH_SECRET}
        depends_on:
            - postgres
            - meilisearch
        labels:
            createdBy: Apps
    meilisearch:
        image: getmeili/meilisearch:v1.16.0
        container_name: ${CONTAINER_NAME}-Meilisearch
        restart: always
        volumes:
            - ./meili_data:/meili_data
        networks:
            - 1panel-network
        environment:
            - MEILI_MASTER_KEY=${MEILI_MASTER_KEY}
        labels:
            createdBy: Apps
    postgres:
        image: postgres:16-alpine
        container_name: ${CONTAINER_NAME}-Postgres
        restart: always
        volumes:
            - ./pgdata:/var/lib/postgresql/data
        networks:
            - 1panel-network
        environment:
            - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
        labels:
            createdBy: Apps
networks:
    1panel-network:
        external: true
