2016-04-04 103 views
1

我是AWS elastic beanstalk的用戶,我有一個小問題。我想用更少的+節點構建我的CSS文件。但我不知道如何在使用jenkins構建時在我的dockerfile中安裝節點。在Dockerfile中安裝節點?

這裏是我在碼頭使用的安裝包。我會很樂意提供任何建議。

FROM php:5.6-apache 


# Install PHP5 and modules along with composer binary 
RUN apt-get update 
RUN apt-get -y install \ 
    curl \ 
    default-jdk \ 
    git \ 
    libcurl4-openssl-dev \ 
    libpq-dev \ 
    libmcrypt-dev \ 
    libpq5 \ 
    npm \ 
    node \ 
    zlib1g-dev \ 
    libfreetype6-dev \ 
    libjpeg62-turbo-dev \ 
    libpng12-dev 

RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ 

RUN docker-php-ext-install curl json mbstring opcache pdo_mysql zip gd exif sockets mcrypt 

# Install pecl 
RUN pecl install -o -f memcache-beta \ 
    && rm -rf /tmp/pear \ 
    && echo 'extension=memcache.so' > /usr/local/etc/php/conf.d/memcache.ini 

在此之後,我乳寧我entrypoint.sh與代碼

#!/usr/bin/env sh 

composer run-script post-install-cmd --no-interaction 

chmod 0777 -R /var/app/app/cache 
chmod 0777 -R /var/app/app/logs 

exec apache2-foreground 

但後來I`ve得到這個錯誤

Error Output: [2016-04-04 11:23:44] assetic.ERROR: The template ":tmp:module.html.twig" contains an error: A template that extends another one cannot have a body in ":tmp:module.ht 
    ml.twig" at line 7.  

但是,當我安裝多克爾容器節點這裏面way

apt-get install git-core curl build-essential openssl libssl-dev 
git clone https://github.com/nodejs/node.git 
cd node 
./configure 
make 
sudo make install 
node -v 

I ca ñ建立我的CSS。所以問題是..當我使用Jenkins構建它時,上面的安裝如何在我的Dockerfile中進行安裝?

回答

0

運行apt-get install node不會安裝Node.js,因爲這不是您要求的軟件包。

如果運行apt-cache info node,你可以看到你安裝的是一個「業餘分組無線節點程序(過渡包)」

您應該遵循the Node.js install instructions通過包管理器安裝。

如果你喜歡從git的建築,你可以做這裏面泊塢窗:

RUN apt-get install git-core curl build-essential openssl libssl-dev \ 
&& git clone https://github.com/nodejs/node.git \ 
&& cd node \ 
&& ./configure \ 
&& make \ 
&& sudo make install 
+0

謝謝。我很愚蠢..沒有意識到這一點。工作,非常感謝:) – Delirium