Ошибка до док-контейнера Centos с cvs - PullRequest
1 голос
/ 03 октября 2019

Мне нужен компьютер centos7 с установленным cvs для запуска некоторых тестов. Поэтому я создал файл Docker, который предоставляет этот контейнер для меня. Но когда я запускаю этот контейнер, возникает следующая ошибка: standard_init_linux.go: 211: пользовательский процесс exec не вызвал "такого файла или каталога". Кто-нибудь есть идеи, как исправить эту ошибку?

Dockerfile

FROM centos
MAINTAINER Glauber Oliveira <glauberqo@gmail.com>
ENV LANG=C.UTF-8
RUN yum update -y && yum install cvs xinetd -y
RUN useradd cvs && useradd -p cvsgit migration
RUN mkdir /opt/cvsroot && cvs -d /opt/cvsroot init
RUN chown -R :cvs /opt/cvsroot && chmod -R g+ws /opt/cvsroot
RUN touch /opt/cvsroot/CVSROOT/passwd && echo "migration:cvsgit" >> /opt/cvsroot/CVSROOT/passwd
COPY files/cvspserver /etc/xinetd.d/
ADD files/run.sh /
RUN chmod +x run.sh
RUN systemctl enable xinetd.service
RUN usermod -a -G cvs migration
EXPOSE 2401
CMD [ "/run.sh", "run" ]

run.sh

#!/bin/bash
#systemctl enable xinetd.service
systemctl start xinetd.service

1 Ответ

1 голос
/ 04 октября 2019

Ошибка возникает в конце строки в стиле Windows (CR LF) вместо Unix (LF). Если вы запустите командный сценарий run.sh непосредственно в Unix, вы получите следующую ошибку:

-bash: ./run.sh: /bin/bash^M: bad interpreter: No such file or directory

Преобразование EOL в сценарии с помощью текстового редактора или утилиты dos2unix.

...