• Matheus Moreno

    Matheus Moreno

    4 months ago
    Hi, everyone! Another question: is it possible to start the sandbox without using flytectl? A member of my team is using Windows and wants to try Flyte. I was trying to accomplish this by starting the sandbox with Docker Compose, and having another container to communicate with it. I was able to run simple commands such as
    flytectl create
    and
    flytectl get
    from the container, but I can't build images, and I think the problem is on the sandbox side, since I can't do that even on my host machine. I get the error:
    OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "docker": executable file not found in $PATH: unknown
    This is the configuration for the sandbox. What am I missing?
    services:
      flyte-sandbox:
        image: <http://cr.flyte.org/flyteorg/flyte-sandbox:latest|cr.flyte.org/flyteorg/flyte-sandbox:latest>
        container_name: flyte-sandbox
        privileged: true
        volumes:
          - ..:/usr/src           # The docker-compose file is inside a sandbox/ dir
        ports:
          - "30081:30081"         # Console at <http://localhost:30081/console>
          - "30084:30084"
          - "30088:30088"
  • Samhita Alla

    Samhita Alla

    4 months ago
    cc: @Yuvraj / @Prafulla Mahindrakar
  • y

    Yuvraj

    4 months ago
    @Matheus Moreno
    latest
    tag is old and deprecated, We don’t publish new images with tag
    latest
    , In past it represent non dind sandbox, Now we only publish DIND images check here https://github.com/flyteorg/flyte/pkgs/container/flyte-sandbox
  • Matheus Moreno

    Matheus Moreno

    4 months ago
    Oh, ok! I'll fix that. But what about everything else? I just ran
    flytectl sandbox start
    and tried to configure the Docker Compose file based on the
    docker inspect
    result. My questions: • The
    ~/.flyte/k3s
    files exist so I can use kubectl on the sandbox, right? Is it possible to manually generate them, i.e. without
    flyte sandbox start
    ? • Do I need to mount the volume on
    ~/.flyte
    on
    /etc/rancher
    for the system to work? This kinda ties in with the previous question.
  • y

    Yuvraj

    4 months ago
    Please add your docker-compose file in thread ?
  • Matheus Moreno

    Matheus Moreno

    4 months ago
    Hi! I was able to make almost everything work with this configuration:
    services:
      sandbox:
        image: <http://cr.flyte.org/flyteorg/flyte-sandbox:dind|cr.flyte.org/flyteorg/flyte-sandbox:dind>
        container_name: flyte-sandbox
        privileged: true
        volumes:
          - ..:/root
          - sandbox-config:/etc/rancher
        # entrypoint: sh -c 'chmod -R u+rwX,go+rX,go-w /etc/rancher && tini flyte-entrypoint.sh'
        ports:
          - "30081:30081"         # Console at <http://localhost:30081/console>
          - "30082:30082"
          - "30084:30084"
          - "30086:30086"
          - "30087:30087"
          - "30088:30088"
    My only problem now is making the
    k3s.yaml
    file accessible to my user container, since it is running as a non-root user, and the k3s file is owned by root. But it seems that the only limitation this causes is that I cannot send
    kubectl
    commands to the sandbox, and that is not a huge problem. Thank you for your help!
  • y

    Yuvraj

    4 months ago
    Yes i am aware about the non-root user issue, For now you can use kubectl command inside the sandbox like
    docker exec -it flyte-sandbox -- k3s kubectl get pods -n flyte
  • Matheus Moreno

    Matheus Moreno

    4 months ago
    Thank you!