fabiomontefuscolo/docker-tikiwiki

MultiTiki?

Closed this issue · 3 comments

Hi,

Have you considered the changes required in this image to support MultiTiki (http://doc.tiki.org/MultiTiki)? I'm planning to migrate my tiki-based websites to docker but I have three or four different sites run through MultiTiki.

It's basically a matter of stating the sites when running "sh setup.sh" and providing database connection informations for each one of them. I can try a patch if you provide some guidance.

Thanks,

Hello!

Well, if I understand that correctly, each site will have it's own database and they will just share Tiki source code. All the trick is based on db/local.php and symlinks.

The way a see to have it is mounting db/ or db/local.php as a volume and customize everything needed inside there. We could also create an extension point on db/local.php, but anyway, you would have to mount a folder to setup multiki.

But I think using dockers, you can drop MultiTiki. Each site can have it's own container based on the same image. Launching one container per website will have the same effect of having Multiki.

Just an idea based on excellent https://github.com/jwilder/nginx-proxy

version: '3.7'

services:
  nginx-proxy:
    image: jwilder/nginx-proxy
    ports:
      - "80:80"
    volumes:
      - /var/run/docker.sock:/tmp/docker.sock:ro

  girafales:
    image: montefuscolo/tikiwiki:19.x
    depends_on:
      - db
    environment:
      - TIKI_DB_USER=girafa_user
      - TIKI_DB_PASS=girafa_pass
      - TIKI_DB_NAME=girafa_db
      - VIRTUAL_HOST=girafales.com.br
  madruga:
    image: montefuscolo/tikiwiki:19.x
    depends_on:
      - db
    environment:
      - TIKI_DB_USER=madruga_user
      - TIKI_DB_PASS=madruga_pass
      - TIKI_DB_NAME=madruga_db
      - VIRTUAL_HOST=madruga.com.br

  db:
    image: mariadb
    environment:
      - MYSQL_ROOT_PASSWORD=tkwkiiii
      - TERM=dumb

Hello!

Well, if I understand that correctly, each site will have it's own database and they will just share Tiki source code. All the trick is based on db/local.php and symlinks.

Exactly!

The way a see to have it is mounting db/ or db/local.php as a volume and customize everything needed inside there. We could also create an extension point on db/local.php, but anyway, you would have to mount a folder to setup multiki.

But I think using dockers, you can drop MultiTiki. Each site can have it's own container based on the same image. Launching one container per website will have the same effect of having Multiki.

Yes, that'd be an option. I'm just concerned about how much host resources that would require since I'm running it in a modest Digital Ocean droplet. I'll try it.

Thanks,