Install tandoor on docker portainer

  • Hi,

    i am trying to install tandoor on my OMV. So I installed docker and portainer over the webinterface.
    Then i opened portainer, created a new user, created a new stack and copied the tandoor stack in the webeditor.



    When i try to deploy the stack, i get the error:
    failed to deploy a stack: Failed to load /data/compose/4/.env: open /data/compose/4/.env: no such file or directory


    What do i miss here?
    Apparently intructions do skip some steps here ^^ And obviously I am very new to the whole docker story.
    Thanks for your help,
    Markus

  • An when i use the tandoor image, iget the following error:


    e66485d353309b6ee29a16dee5934cd818762874d858d2ade932af5feea9ff80

    • AppArmorProfile docker-default
    • Args [ ]
    • Config { AttachStderr: false, AttachStdin: false, AttachStdout: false, Cmd: null, Domainname: , Entrypoint: /opt/recipes/boot.sh, Env: version: "3",services:,db_recipes:,restart: always,image: postgres:15-alpine,volumes:,- ./postgresql:/var/lib/postgresql/data,env_file:,- ./.env,web_recipes:,restart: always,image: vabene1111/recipes,env_file:,- ./.env,volumes:,- staticfiles:/opt/recipes/staticfiles,- nginx_config:/opt/recipes/nginx/conf.d,- ./mediafiles:/opt/recipes/mediafiles,depends_on:,- db_recipes,nginx_recipes:,image: nginx:mainline-alpine,restart: always,ports:,- 81:80,env_file:,- ./.env,depends_on:,- web_recipes,volumes:,- nginx_config:/etc/nginx/conf.d:ro,- staticfiles:/static:ro,- ./mediafiles:/media:ro,volumes:,nginx_config:,staticfiles:,PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin,LANG=C.UTF-8,GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D,PYTHON_VERSION=3.10.12,PYTHON_PIP_VERSION=23.0.1,PYTHON_SETUPTOOLS_VERSION=65.5.1,PYTHON_GET_PIP_URL=https://github.com/pypa/get-pip/raw/0d8570dc44796f4369b652222cf176b3db6ac70e/public/get-pip.py,PYTHON_GET_PIP_SHA256=96461deced5c2a487ddc65207ec5a9cffeca0d34e7af7ea1afc470ff0d746207,PYTHONUNBUFFERED=1, ExposedPorts: [object Object], Hostname: e66485d35330, Image: vabene1111/recipes:latest, Labels: [object Object], OnBuild: null, OpenStdin: false, StdinOnce: false, Tty: false, User: , Volumes: null, WorkingDir: /opt/recipes }
    • Created 2023-07-24T10:36:23.86735022Z
    • Driver overlay2
    • ExecIDs
    • GraphDriver { Data: [object Object], Name: overlay2 }
    • HostConfig { AutoRemove: false, Binds: , BlkioDeviceReadBps: null, BlkioDeviceReadIOps: null, BlkioDeviceWriteBps: null, BlkioDeviceWriteIOps: null, BlkioWeight: 0, BlkioWeightDevice: null, CapAdd: AUDIT_WRITE,CHOWN,DAC_OVERRIDE,FOWNER,FSETID,KILL,MKNOD,NET_BIND_SERVICE,NET_RAW,SETFCAP,SETGID,SETPCAP,SETUID,SYS_CHROOT, CapDrop: AUDIT_CONTROL,BLOCK_SUSPEND,DAC_READ_SEARCH,IPC_LOCK,IPC_OWNER,LEASE,LINUX_IMMUTABLE,MAC_ADMIN,MAC_OVERRIDE,NET_ADMIN,NET_BROADCAST,SYSLOG,SYS_ADMIN,SYS_BOOT,SYS_MODULE,SYS_NICE,SYS_PACCT,SYS_PTRACE,SYS_RAWIO,SYS_RESOURCE,SYS_TIME,SYS_TTY_CONFIG,WAKE_ALARM, Cgroup: , CgroupParent: , CgroupnsMode: host, ConsoleSize: 0,0, ContainerIDFile: , CpuCount: 0, CpuPercent: 0, CpuPeriod: 0, CpuQuota: 0, CpuRealtimePeriod: 0, CpuRealtimeRuntime: 0, CpuShares: 0, CpusetCpus: , CpusetMems: , DeviceCgroupRules: null, DeviceRequests: , Devices: , Dns: , DnsOptions: null, DnsSearch: null, ExtraHosts: , GroupAdd: null, IOMaximumBandwidth: 0, IOMaximumIOps: 0, Init: false, IpcMode: private, Isolation: , Links: null, LogConfig: [object Object], MaskedPaths: /proc/asound,/proc/acpi,/proc/kcore,/proc/keys,/proc/latency_stats,/proc/timer_list,/proc/timer_stats,/proc/sched_debug,/proc/scsi,/sys/firmware, Memory: 0, MemoryReservation: 0, MemorySwap: 0, MemorySwappiness: null, NanoCpus: 0, NetworkMode: bridge, OomKillDisable: false, OomScoreAdj: 0, PidMode: , PidsLimit: null, PortBindings: [object Object], Privileged: false, PublishAllPorts: false, ReadonlyPaths: /proc/bus,/proc/fs,/proc/irq,/proc/sys,/proc/sysrq-trigger, ReadonlyRootfs: false, RestartPolicy: [object Object], Runtime: runc, SecurityOpt: null, ShmSize: 67108864, UTSMode: , Ulimits: null, UsernsMode: , VolumeDriver: , VolumesFrom: null }
    • HostnamePath /var/lib/docker/containers/e66485d353309b6ee29a16dee5934cd818762874d858d2ade932af5feea9ff80/hostname
    • HostsPath /var/lib/docker/containers/e66485d353309b6ee29a16dee5934cd818762874d858d2ade932af5feea9ff80/hosts
    • Id e66485d353309b6ee29a16dee5934cd818762874d858d2ade932af5feea9ff80
    • Image sha256:a9fd19c96555097452631d3835a8591cd0d5b883b90df57b6a4cb729996f7665
    • LogPath /var/lib/docker/containers/e66485d353309b6ee29a16dee5934cd818762874d858d2ade932af5feea9ff80/e66485d353309b6ee29a16dee5934cd818762874d858d2ade932af5feea9ff80-json.log
    • MountLabel
    • Mounts [ ]
    • Name /tandoor
    • NetworkSettings { Bridge: , EndpointID: , Gateway: , GlobalIPv6Address: , GlobalIPv6PrefixLen: 0, HairpinMode: false, IPAddress: , IPPrefixLen: 0, IPv6Gateway: , LinkLocalIPv6Address: , LinkLocalIPv6PrefixLen: 0, MacAddress: , Networks: [object Object], Ports: [object Object], SandboxID: d246b58f1f1c025754d8e3c1191e0783c689371af24cba4fc6fb56327d1679a7, SandboxKey: /var/run/docker/netns/d246b58f1f1c, SecondaryIPAddresses: null, SecondaryIPv6Addresses: null }
    • Path /opt/recipes/boot.sh
    • Platform linux
    • Portainer { ResourceControl: [object Object] }
    • ProcessLabel
    • ResolvConfPath /var/lib/docker/containers/e66485d353309b6ee29a16dee5934cd818762874d858d2ade932af5feea9ff80/resolv.conf
    • RestartCount 0
    • State { Dead: false, Error: , ExitCode: 1, FinishedAt: 2023-07-24T10:38:04.236345397Z, OOMKilled: false, Paused: false, Pid: 0, Restarting: false, Running: false, StartedAt: 2023-07-24T10:36:24.144627682Z, Status: exited }
  • No idea, i ve tried image, and stack, and compose. With compose it says:

    failed to deploy a stack: Top-level object must be a mappin


    Do i have to do anything else besides installing portainer over the OMV webinterface?

  • Do i have to do anything else besides installing portainer over the OMV webinterface?

    You're running the container without PUID:PGID.


    You better off using proper volume paths instead of volume arguments.


    And comment the env argument since almost certain you are not using it

  • When i try to deploy the stack, with no env file:


    docker run -d \

    -v "$(pwd)"/staticfiles:/opt/recipes/staticfiles \

    -v "$(pwd)"/mediafiles:/opt/recipes/mediafiles \

    -p 80:8080 \

    -e SECRET_KEY=q5m(xjx&y(g6w#sab=-jslqw)ah5*!y19rzu=4r!8qp&%)-c38 \

    -e DB_ENGINE=django.db.backends.postgresql \

    -e POSTGRES_HOST=db_recipes \

    -e POSTGRES_PORT=5432 \

    -e POSTGRES_USER=djangodb \

    -e POSTGRES_PASSWORD=HollyMolly \

    -e POSTGRES_DB=djangodb \

    --name recipes_1 \

    vabene1111/recipes


    I still get the error with the top lavel domain mapping...

  • And if i use comose, i.e. the yml file, i get the error:
    failed to deploy a stack: Failed to load /data/compose/14/.env: open /data/compose/14/.env: no such file or directory


    the yml file looks like this:

    • Offizieller Beitrag

    Well, just a quick glance.. one of your issues may be, it looks like this container is trying to use port 80 according to your stacks. Have you put OMV on another port? It uses port 80 by default. If not, you need to properly adjust the stack for the container to use another port.

  • Okay i comment all env comand in the yml file

    I upoaded the env file anyway in portainer??? no idea if that works, but i i also dont see an option to uoload the env file there and adjust a path

    I changed the port to 81


    Well the stack i srunning, but tandoor still doesnt work.
    I guess becasude of the missing env file?


    Whats the right path ton the env file when uploading it in portainer?

  • really this portainer doesnt work:


    • Offizieller Beitrag

    really this portainer doesnt work:


    I'm curious how you came to that conclusion from that log.

  • Can you explain how to do this for me.. a total noob.

    I try to install it through Portainer.. and I just don't know where to start

    At first in OMV go to System / Extensions and install the plugin "openmediavault-compose" if it is not installed yet.


    Then go to Services / Compose / Settings and check, if the settings for "Compose-Files" (share for storing the compose-files) and "Docker" (path to docker-installation) are set correctly to your needs.


    Then go to Services / Compose / Files and create a new file. Change the placeholders (<xxx>) to your needs. Here is my compose-file:


    Look into https://docs.tandoor.dev/install/docker/ for further information e.g. about passwords.


    When your compose-file is complete, create and start the container with "Up" command in Services/Compose/Files.


    Matthias

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!