Команда sudo: не найдено

При выполнении моего init.sh я вызываю команду:

sudo bash ${INSTALLPATH}seafile.sh start

После этого ошибка:

seafile_1_f2341d904d27 | /bin/sh: 1: sudo: not found

имеет место.

открывая каталог «bin» и глядя на «sh», это просто нечитаемые символы.

Dockerfile, вызывающий init.sh, делает это следующим образом:

 FROM debian
#FROM armv7/armhf-debian

MAINTAINER me

# install packages
RUN apt-get update && apt-get install sudo -y

RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
ca-certificates \
python2.7 \
python-setuptools \
python-imaging \
python-ldap \
python-urllib3 \
sqlite3 \
wget

# Copy scripts
ADD ./scripts /scripts

# set environment variables
ENV SERVER_NAME mdh-seafile
ENV SERVER_IP 127.0.0.1
ENV FILESERVER_PORT 8082
ENV SEAFILE_DIR /data
ENV SEAFILE_VERSION seafile-server-6.3.4
ENV INSTALLPATH /opt/seafile/${SEAFILE_VERSION}/

# clean for smaller image
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

# Volumes for persistent configuration
VOLUME /opt/seafile/

# added
COPY /opt/seafile/${SEAFILE_VERSION}/seafile.sh .
COPY /opt/seafile/${SEAFILE_VERSION}/seahub.sh .


# set entrypoint
ENTRYPOINT sudo bash /scripts/init.sh

Инит.ш:

else
  # start seafile
  # whoami -> Output: root
  sudo bash ${INSTALLPATH}seafile.sh start
  sudo bash ${INSTALLPATH}seahub.sh start
  # keep seafile running in foreground to prevent docker container shutting down
  while true; do
    sudo tail -f /opt/seafile/logs/seafile.log
    sleep 10
  done

fi

Я выполняю все, вызывая sudo bash install.sh, который выполняет файл docker-compose, который ссылается на компоненты.

Докер-композитор:

version: '2'
services:

  db:
    #image: hypriot/rpi-mysql
    image: mysql
    environment:
      - MYSQL_ROOT_PASSWORD=###
    volumes:
    - /mnt/data/mysql:/var/lib/mysql

  duply:
    build: .
    volumes:
      - ./config:/config
      - /mnt/data:/mnt/data
      - ./webinterface:/var/www/html/MyDigitalHome
      - /mnt/guestbackup:/mnt/guestbackup/backup
      #- /mnt/usb-removable:/usb-removable
    ports:
      - "8080:80"
      - "24:22"
    links:
      - db
  seafile:
    build: seafile/
    volumes:
      - ./seafile/config:/config
      - /mnt/data/seafile:/data
    ports:
      - "8000:8000"
      - "8082:8082"
    environment:
      - SEAFILE_ADMIN=###@mydigitalhome.xy
      - SEAFILE_ADMIN_PW=###


  owncloud:
    build: owncloud/
    volumes:
      - /mnt/data/owncloud:/data
      - ./owncloud/config:/var/www/html/config
    ports:
      - "8090:80"
    links:
      - db:mysql

Текущие ошибки:

ERROR: Service 'seafile' failed to build: COPY failed: stat /var/lib/docker/tmp/docker-builder845725722/opt/seafile/seafile-server-6.3.4/seafile.sh: no such file or directory

Attaching to mdh_seafile_1_f2341d904d27, mdh_db_1_46bebe733124, mdh_duply_1_170a5db26129, mdh_owncloud_1_260c3a56f2a5
seafile_1_f2341d904d27 | bash: seafile.sh: No such file or directory
seafile_1_f2341d904d27 | bash: seahub.sh: No such file or directory
seafile_1_f2341d904d27 | tail: cannot open '/opt/seafile/logs/seafile.log' for reading: No such file or directory
seafile_1_f2341d904d27 | tail: no files remaining

Пожалуйста, поделитесь дополнительной информацией о вашей проблеме. Вы корень? sudo может не существовать, потому что вы root. Может даже не быть Баша. sh файл является двоичным, так что это нормально.

samthegolden 10.04.2019 16:56

@samthegolden Без sudo я получаю сообщение об ошибке: файл не найден.

Ora nge 10.04.2019 17:00

Вы также можете поделиться первой строкой вашего Dockerfile? строка ОТ. Чтобы мы могли узнать, используете ли вы Ubuntu, Alpine или другой дистрибутив?

Marcelo 10.04.2019 17:13

Вы уже root в контейнере, вам не нужно sudo.

BMitch 10.04.2019 18:59

@BMitch - без sudo я получаю сообщение об ошибке: такого каталога нет.

Ora nge 10.04.2019 19:08
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
5
4 513
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Начиная с debian образа, который вам нужно установить sudo, вы можете сделать это, добавив RUN apt-get update && apt-get install sudo -y в начало вашего Dockerfile. Затем перестройте свой образ с помощью docker build . и снова запустите команду.

Комментарии не предназначены для расширенного обсуждения или сеансов отладки; этот разговор был перешел в чат. Убедитесь, что редактировать ответ отражает результат обсуждения.

Cody Gray 10.04.2019 18:27

Я предполагаю, что вы используете это в докере. вы можете добавить в свой файл докеров

RUN apt update && apt install -y sudo

Это должно решить вашу проблему.

Я уже сделал это. Sudo отлично работает в любом другом месте.

Ora nge 10.04.2019 16:59

Другие вопросы по теме