Docker составить сообщение об ошибке нет такого файла или каталога. для файлов. sh в ubuntu - PullRequest
1 голос
/ 05 августа 2020

Я пытаюсь запустить контейнер docker для Интернета, в котором есть файл сценария start.sh для его запуска, но docker-compose up web выдает ошибку.

ERROR: for web  Cannot start service web: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: \"/home/app/start.sh\": stat /home/app/start.sh: no such file or directory": unknown

С помощью следующей команды он показывает start.sh присутствует в docker изображении

docker run -it web bin/bash

docker -compose.yaml

web:
    container_name: "web"
    environment:
      - LANG=C.UTF-8
    env_file:
      - .env
    build: .
    volumes:
      - ../app:/home/app
      - ../media:/home/media
      - ../misc:/home/downloads
    command: ["/home/app/start.sh"]

dockerfile

# Fetch the base image
FROM ubuntu:18.04

# Install python3 and pip3
RUN apt-get -y update && apt-get install -y python3 python3-pip git libsasl2-dev python-dev libldap2-dev libssl-dev openjdk-8-jdk libwebkitgtk-1.0-0 curl nano wget unzip

# Install pip3 lib
COPY pip3-requirements.txt /pip3-requirements.txt
RUN pip3 install -r pip3-requirements.txt

# Copy Code
ADD . /home/app/

Подробности:

docker версия: Docker version 19.03.6, build 369ce74a3c

docker -компонованная версия: docker-compose version 1.17.1, build unknown

базовый образ dockerfile: ubuntu:18.04

1 Ответ

0 голосов
/ 06 августа 2020

Я пытаюсь сделать это снова на примере, так как я думаю, что это действительно сводится к структуре проекта, извините, если моя предыдущая попытка запуталась.

У меня есть файл Docker:

FROM ubuntu:18.04
ADD . /home/app

И файл docker -compose.yml:

web:
    container_name: "web"
    build: .
    volumes:
      - ../test:/home/app
    command: ["/home/app/start.sh"]

Со структурой каталогов:

./test
    docker-compose.yml
    Dockerfile
    start.sh

Затем я могу запустить:

chmod +x start.sh
docker-compose build
docker-compose up

Что может быть полезно для устранения неполадок, так это запустить:

docker run -it web bash
> ls -al / /home /home/app

Надеюсь, это поможет, я подозреваю, что скрипт не помещается в /home/app, поскольку вы получаете сообщение об ошибке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...