pukiwikiを動かすDockerfile のバックアップソース(No.1)

更新

[[公開メモ]]

* php に加えて、platex や plantuml を動かしたい [#ef6d4966]

debian:stretch-slim に apache2 + php7 を入れ、さらに以下のパッケージを入れた。

- [[ソフトウェア/pukiwiki/QRコードの表示]] のために php-sqlite3, php-curl
- [[ソフトウェア/pukiwiki/uml.inc.php]] のために pluntuml.jar, default-jre, graphviz
- [[ソフトウェア/pukiwiki/数式プラグイン]] のために platex, dvipdfmx, pdf2svg

www-data の uid, gid を適当な値に変えることで、ホスト側の pukiwiki フォルダの uid, gid と一致させた

* イメージの作成と使用 [#e4d703c1]

以下の Dockerfile と start-apache2.sh があるフォルダーで、
次のようにしてイメージを作成した。サイズは 1.62GB とか。

 LANG:console
 $ docker build -t private/stretch-pukiwiki .

使うときは、

 LANG:console
 $ docker run -d -p1888:80 -v ~takeuchi/pukiwiki:/var/www/html private/stretch-pukiwiki /start-apache2.sh

とか。

* ソースファイル [#xd126e17]

Dockerfile
 FROM debian:stretch-slim
 
 RUN set -x && \
     apt-get update && \
     apt-get install -y gnupg wget && \
     echo "deb http://packages.dotdeb.org stretch all" > /etc/apt/sources.list.d/packages.dotdeb.org.list && \
     wget -O- https://www.dotdeb.org/dotdeb.gpg | apt-key add - && \
     apt-get update && \
     apt-get install -y php php-mbstring && \
     apt-get install -y php-sqlite3 php-curl && \
         apt-get install -y texlive-lang-japanese texlive-latex-extra pdf2svg && \
     sed -i "s/www-data:x:33:/www-data:x:1000:/" /etc/group && \
     sed -i "s/www-data:x:33:33/www-data:x:1000:1000/" /etc/passwd && \
         wget http://sourceforge.net/projects/plantuml/files/plantuml.jar/download -O /usr/local/bin/plantuml.jar && \
         mkdir -p /usr/share/man/man1 && \
         apt-get install -y default-jre graphviz && \
     apt-get purge -y gnupg && \
     apt-get autoremove -y && \
     apt-get clean && \
     set -u
 
 EXPOSE 80
 
 COPY start-apache2.sh /start-apache2.sh
 
 
 # ENTRYPOINT ["/start-apache2.sh"]

start-apache2.sh
 #!/bin/bash
 source /etc/apache2/envvars
 apache2 -D FOREGROUND


Counter: 2128 (from 2010/06/03), today: 2, yesterday: 0