您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何将新软件包安装到非根Docker容器中?

如何将新软件包安装到非根Docker容器中?

Dockerfile#L24中用户已切换到solr。因此,如果您使用将该图像用作基本图像FROMDockerfile用户自己的所有命令都将由用户运行solr

您可以通过从头开始构建Dockerfile来修复它。

FROM    java:openjdk-8-jre
MAINTAINER  Martijn Koster "mak-docker@greenhills.co.uk"

ENV SOLR_VERSION 5.3.0
ENV SOLR solr-$SOLR_VERSION
ENV SOLR_USER solr

RUN 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/$SOLR

RUN apt-get --assume-yes install vim

EXPOSE 8983
WORKDIR /opt/solr
USER $SOLR_USER
CMD ["/bin/bash", "-c", "/opt/solr/bin/solr -f"]

其次,在构建时不要将代码复制到容器中,使用-v选项将更加灵活。

COPY home/ocscommerce /etc/solr/home

替换为docker run命令-v home/ocscommerce:/etc/solr/home

其他 2022/1/1 18:18:38 有359人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶