在Dockerfile#L24中,用户已切换到
solr。因此,如果您使用将该图像用作基本图像
FROM,
Dockerfile则用户自己的所有命令都将由用户运行
solr
您可以通过从头开始构建Dockerfile来修复它。
FROM java:openjdk-8-jreMAINTAINER Martijn Koster "mak-docker@greenhills.co.uk"ENV SOLR_VERSION 5.3.0ENV SOLR solr-$SOLR_VERSIonENV SOLR_USER solrRUN export DEBIAN_FRonTEND=noninteractive && apt-get update && apt-get -y install lsof && groupadd -r $SOLR_USER && useradd -r -g $SOLR_USER $SOLR_USER && mkdir -p /opt && wget -nv --output-document=/opt/$SOLR.tgz http://www.us.apache.org/dist/lucene/solr/$SOLR_VERSION/$SOLR.tgz && tar -C /opt --extract --file /opt/$SOLR.tgz && rm /opt/$SOLR.tgz && ln -s /opt/$SOLR /opt/solr && mkdir -p /opt/solr/server/solr/lib && chown -R $SOLR_USER:$SOLR_USER /opt/solr /opt/$SOLRRUN apt-get --assume-yes install vimEXPOSE 8983WORKDIR /opt/solrUSER $SOLR_USERCMD ["/bin/bash", "-c", "/opt/solr/bin/solr -f"]
其次,在构建时不要将代码复制到容器中,使用
-v选项将更加灵活。
COPY home/ocscommerce /etc/solr/home
替换为
docker run命令
-v home/ocscommerce:/etc/solr/home



