Docker


WackoWiki DockerRepo: https://hub.docker.com/r/trojer/wackowiki


DokuWiki: Running DokuWiki on Docker

Docker Starter

1. Docker und Docker Compose installieren

 sudo zypper refresh	

 sudo zypper update	

 sudo zypper in docker docker-compose	

 sudo sudo useradd $USER docker	

 groups	

 systemctl start docker	

 cd /home/$USER/Projekt/wackowiki_docker	

2. Projektordner anlegen

 mkdir /home/$USER/Projekt/wackowiki_docker	

3. Projektordner einrichten

Docker-compose.yml und Dockerfile in den Ordner kopieren
Scriptordner erstellen und Script Dateien kopieren



docker-compose.yml
---
services:
    wacko:
        image: trojer/wackowiki:latest
        # image: trojer/wackowiki:0.1.1
        ports: 
            - '10080:80'
        build: 
            dockerfile: Dockerfile 
            context: .
#            args: 
#                VERSION: 6.0.22
        depends_on: 
            - db
        volumes:
            - ./scripts/config.php:/var/www/html/src/config/config.php

    db:
        image: mariadb:10
        environment: 
            MARIADB_RANDOM_ROOT_PASSWORD: "yes" 
            MARIADB_DATABASE: wacko
            MARIADB_USER: wacko
            MARIADB_PASSWORD: examplepassword
       # volumes:
       #     - ./scripts/wacko.sql:/docker-entrypoint-initdb.d/wacko.sql
            

    phpmyadmin:
        image: phpmyadmin
        restart: always
        ports:
        - 10081:80


Dockerfile
FROM php:apache
ARG VERSION=6.1.27
ENV MARIADB_DATABASE=wacko

RUN apt-get update -y \
&&  apt-get install -y \
    wget \
    apt-utils \
    libicu-dev \
    zlib1g-dev \
    libpng-dev \
&&     apt-get clean \
&&     rm -rf /var/cache/apt \
&& docker-php-ext-install \
    bcmath \
    gd \
    intl \
    mysqli \
    pdo_mysql \
    pdo \
    mysqli \
    ctype \
    iconv \
&& a2enmod rewrite   

WORKDIR /var/www/html 
USER www-data 
RUN wget -q -O - https://github.com/WackoWiki/wackowiki/archive/refs/tags/${VERSION}.tar.gz | tar -xz --strip-components=1
USER root
RUN sed -i -e  's#/var/www/html#/var/www/html/src#g' /etc/apache2/sites-enabled/000-default.conf


4. Docker Programme

Im Projektverzeichnis und docker-Dienst ist gestartet?

 systemctl status docker	

 docker image ls	

 docker compose pull	

 docker build -t trojer/wackowiki:latest .	

 docker compose down	

 docker compose up	

 docker run -it trojer/wackowiki:latest bash	

docker exec -it <container-name-or-id> bash
(Bash im aktiven Container ausführen)


Warning: require(/var/www/html/src/config/config.php): Failed to open stream: Permission denied in /var/www/html/src/class/settings.php on line 39


Fatal error: Uncaught Error: Failed opening required 'config/config.php' (include_path='.:/usr/local/lib/php') in /var/www/html/src/class/settings.php:39 Stack trace: #0 /var/www/html/src/index.php(7): Settings->__construct() #1 {main} thrown in /var/www/html/src/class/settings.php on line 39


chmod -R 777 config/config.php


https://stackoverflow.com/ques[...]container-running-ma


docker ps
docker rmi -f $(docker images -f "dangling=true" -q)


5. WackoWikiWeb aufrufen

für WackoWikiWeb: http://localhost:10080/
für phpMyAdmin http://localhost:10081/


ToDo

Dateien (1)