※2021.12.30 Docker Dokuwiki bitnamiこちらにも別のdokuwiki
こちらのlinuxserverのdokuwikiはnginxで動きます。
SSL付きのDokuwiki
docker-compose.yml
--- version: "2.1" services: https-portal: image: steveltn/https-portal:1 ports: - '80:80' - '443:443' links: - dokuwiki #restart: always restart: unless-stopped environment: DOMAINS: 'dokuwiki.fl8.jp -> http://dokuwiki' #STAGE: 'local' STAGE: 'production' #FORCE_RENEW: 'true' dokuwiki: image: ghcr.io/linuxserver/dokuwiki container_name: dokuwiki environment: - PUID=1000 - PGID=1000 - TZ=Asia/Tokyo volumes: - ./config:/config # - /tmpfs:/var/caceh/nginx #ports: # - 80:80 # - 443:443 #optional restart: unless-stopped
tmpfsにfastcgi_cacheを置く場合、tmpfsの設定を入れる
/etc/fstab
tmpfs /tmpfs tmpfs defaults,size=1024m,noatime,mode=1777 0 0
mkdir /tmpfs mount /tmpfs
https-portalからforwardされてくるので、X-Forwared-Forからアクセス元IPを取得し、real_ipとしてセットする。
config/nginx/nginx.conf
set_real_ip_from 172.18.0.0/16; real_ip_header X-Forwarded-For;
このX-Forwared-Forを入れないと、dockerの場合counterもうまくカウントしてくれない。
http{}の中にfastcgi_cache_pathとfastcgi_cache_keyの記述を追加
config/nginx/nginx.conf
http { fastcgi_cache_path /var/caceh/nginx levels=1:2 keys_zone=cache-zone:30m max_size=1024M inactive=600m; fastcgi_cache_key "$scheme$request_method$host$request_uri";
config/nginx/site-confs/default
location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; # With php5-cgi alone: fastcgi_pass 127.0.0.1:9000; # With php5-fpm: #fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include /etc/nginx/fastcgi_params; set $do_not_cache 0; # -- POST or HEAD ? if ($request_method != "GET") { set $do_not_cache 1; } fastcgi_cache cache-zone; fastcgi_cache_valid 200 60m; add_header X-F-Cache $upstream_cache_status;
X-Forwared-Forしてあれば、real_ipで制限できる。
location / { try_files $uri $uri/ @dokuwiki; allow xxx.xxxx.xxx.xxx; deny all; }
# docker-compose up -d Starting dokuwiki ... error ERROR: for dokuwiki Cannot start service dokuwiki: oci runtime error: container_linux.go:235: starting container process caused "process_linux.go:258: applying cgroup configuration for process caused \"Cannot set property TasksAccounting, or unknown property.\"" ERROR: for dokuwiki Cannot start service dokuwiki: oci runtime error: container_linux.go:235: starting container process caused "process_linux.go:258: applying cgroup configuration for process caused \"Cannot set property TasksAccounting, or unknown property.\"" ERROR: Encountered errors while bringing up the project.
古いバージョンのsystemdにはTaskAccounting が無い
これは新しいsystemdにupdateすれば治る
# yum update systemd
data、conf、tplのコピー
rsync hoge@hogehoge.com:/var/www/html/dokuwiki/data/ config/dokuwiki/data/ rsync hoge@hogehoge.com:/var/www/html/dokuwiki/conf/ config/dokuwiki/conf/ rsync hoge@hogehoge.com:/home/www/public_html/dokuwiki/lib/tpl/dokuwiki/ config/dokuwiki/lib/tpl/dokuwiki/
後は、既存環境と同じ拡張機能をインストール