ich ein Docker Bild und jetzt gebaut haben, wenn sie versuchen, den Behälter ich die folgende Fehlermeldung auszuführen:Docker Bild andernfalls laufen
$ docker run myimage
[dumb-init] /docker-entrypoint.sh: No such file or directory
Irgendwelche Ideen?
Auch die Datei docker-entrypoint.sh
existiert auf dem Bild:
$ docker run --entrypoint=/bin/ls myimage -l /docker-entrypoint.sh
-rwxr-xr-x 1 root root 724 Aug 23 09:50 /docker-entrypoint.sh
FROM ubuntu:16.04
MAINTAINER Gareth Rushgrove "[email protected]"
ARG ssh_prv_key
ARG ssh_pub_key
ENV PUPPET_SERVER_VERSION="2.7.2" DUMB_INIT_VERSION="1.1.0" UBUNTU_CODENAME="xenial" PUPPETSERVER_JAVA_ARGS="-Xms256m -Xmx256m" PATH=/opt/puppetlabs/server/bin:/opt/puppetlabs/puppet/bin:/opt/puppetlabs/bin:$PATH
LABEL org.label-schema.vendor="Puppet" \
org.label-schema.url="https://github.com/puppetlabs/puppet-in-docker" \
org.label-schema.name="Puppet Server (No PuppetDB)" \
org.label-schema.license="Apache-2.0" \
org.label-schema.version=$PUPPET_SERVER_VERSION \
org.label-schema.vcs-url="https://github.com/puppetlabs/puppet-in-docker" \
org.label-schema.vcs-ref="a2b1fbbc73177ddc3def23d167f9beb9c3ef9f6c" \
org.label-schema.build-date="2017-02-21T17:25:14Z" \
org.label-schema.schema-version="1.0" \
com.puppet.dockerfile="/Dockerfile"
RUN apt-get update && \
apt-get install -y wget=1.17.1-1ubuntu1 git && \
wget https://apt.puppetlabs.com/puppetlabs-release-pc1-"$UBUNTU_CODENAME".deb && \
wget https://github.com/Yelp/dumb-init/releases/download/v"$DUMB_INIT_VERSION"/dumb-init_"$DUMB_INIT_VERSION"_amd64.deb && \
dpkg -i puppetlabs-release-pc1-"$UBUNTU_CODENAME".deb && \
dpkg -i dumb-init_"$DUMB_INIT_VERSION"_amd64.deb && \
rm puppetlabs-release-pc1-"$UBUNTU_CODENAME".deb dumb-init_"$DUMB_INIT_VERSION"_amd64.deb && \
apt-get update && \
apt-get install --no-install-recommends -y puppetserver="$PUPPET_SERVER_VERSION"-1puppetlabs1 && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
gem install --no-rdoc --no-ri r10k
COPY puppetserver /etc/default/puppetserver
COPY logback.xml /etc/puppetlabs/puppetserver/
COPY request-logging.xml /etc/puppetlabs/puppetserver/
RUN puppet config set autosign true --section master
VOLUME /etc/puppetlabs/code/ \
/etc/puppetlabs/puppet/ssl/ \
/opt/puppetlabs/server/data/puppetserver/
COPY docker-entrypoint.sh/
# Add the keys and set permissions
RUN mkdir -p /root/.ssh && \
chmod 0700 /root/.ssh && \
echo "$ssh_prv_key" > /root/.ssh/id_rsa && \
echo "$ssh_pub_key" > /root/.ssh/id_rsa.pub && \
chmod 600 /root/.ssh/id_rsa && \
chmod 600 /root/.ssh/id_rsa.pub && \
echo "Host github.com\n\tStrictHostKeyChecking no\n" >> /root/.ssh/config
EXPOSE 8140
ENTRYPOINT ["dumb-init", "/docker-entrypoint.sh"]
CMD ["foreground" ]
COPY Dockerfile/
Poste dein Dockerfile –
Entschuldigung, ich hätte wahrscheinlich auch Docker CE auf Windows (Linux-Containern) erwähnt; die dockerfile wurde erfolgreich auf mac getestet – NA1985
Wozu dient diese dumb-init? –