r
  • postgresql
  • 2017-04-07 55 views 0 likes 
    0

    我有一個完美的postgres Dockerfile。我設法通過Dockerfile在鏡像中安裝R-3.3.3,並從這個工作中正確地找到容器。但是,當我嘗試通過以下條目安裝軟件包時,圖像創建成功,但其容器立即以正常狀態退出。以下是我添加的新條目,改變了行爲。我錯過了什麼?R包安裝在Postgres Docker中的問題圖片

    RUN R -e "install.packages('devtools',repos='http://cran.us.r-project.org')" 
         && R -e "install.packages('RPostgreSQL',repos='http://cran.us.r-project.org')" \ 
         && R -e "install.packages('hash',repos='http://cran.us.r-project.org')" \ 
         && R -e "install.packages('nloptr',repos='http://cran.us.r-project.org')" \ 
         && R -e "install.packages('DBI',repos='http://cran.us.r-project.org')" \ 
         && R -e "install.packages('Rcpp',repos='http://cran.us.r-project.org')" \ 
         && R -e "install.packages('BH',repos='http://cran.us.r-project.org')" 
    
    +0

    雖然,我明白如果沒有命令,容器會以0狀態退出。不過,我有這個,並已經測試它正常工作。爲什麼只有在添加上面的行(上面的某個圖層)之後才能做出這樣的改變? EXPOSE 5432 CMD [「postgres」] – Andromeda64

    回答

    0

    這一切工作正常。有些Docker文件不正確。我把它們放在一起後,一切正常。

    RUN apt-get install -y --auto-remove \ 
         default-jdk \ 
         libcurl4-openssl-dev \ 
         build-essential \ 
         gfortran \ 
         zlib1g \ 
         zlib1g-dev \ 
         libbz2-dev \ 
         liblzma-dev \ 
         libpcre3-dev \ 
         postgresql-9.6-plr \ 
         libpq-dev \ 
         libssl-dev \ 
        && LD_LIBRARY_PATH=/usr/lib/apt/methods/bzip2 apt-get -y install wget \ 
        && wget -O /R-3.3.3.tar.gz https://cran.r-project.org/src/base/R-3/R-3.3.3.tar.gz \ 
        && cd/\ 
        && gunzip /R-3.3.3.tar.gz \ 
        && tar xvf R-3.3.3.tar \ 
        && cd R-3.3.3 \ 
        && ./configure --prefix=/usr --with-readline=no --with-x=no \ 
        && make \ 
        && make install \ 
        && R -e "install.packages('devtools',repos='http://cran.us.r-project.org')" \ 
        && R -e "install.packages('RPostgreSQL',repos='http://cran.us.r-project.org')" \ 
        && R -e "install.packages('hash',repos='http://cran.us.r-project.org')" \ 
        && R -e "install.packages('nloptr',repos='http://cran.us.r-project.org')" \ 
        && R -e "install.packages('DBI',repos='http://cran.us.r-project.org')" \ 
        && R -e "install.packages('Rcpp',repos='http://cran.us.r-project.org')" \ 
        && R -e "install.packages('BH',repos='http://cran.us.r-project.org')" \ 
        && cd .. \ 
        && rm R-3.3.3.tar \ 
        && rm -rf R-3.3.3 \ 
        && apt purge -y --auto-remove \ 
         default-jdk \ 
         libssl-dev \ 
         libpq-dev \ 
         libpcre3-dev \ 
         liblzma-dev \ 
         libbz2-dev \ 
         zlib1g-dev \ 
         libcurl4-openssl-dev \ 
         build-essential \ 
         wget \ 
        && rm -f /tmp/Rtmp* \ 
        && apt-get -y autoremove 
    
    相關問題