Sign inSign up

kohanaworld/unit

By kohanaworld

•Updated about 1 year ago

Unit (Nginx) with PHP

Image
Developer tools
Web servers
0

529

kohanaworld/unit repository overview

⁠Docker

https://hub.docker.com/r/kohanaworld/unit/tags⁠

⁠IPv6 fix Docker

cat /etc/docker/daemon.json
{
"ipv6": true,
"fixed-cidr-v6": "2001:db8:1::/64"
}

⁠Prepare

docker ps -q | xargs --no-run-if-empty docker stop
# Remove containers
docker rm dkt

## MEMCACHE 
# Start 2 servers
```shell
docker run --name dktmemcached -d bitnami/memcached:latest
docker run --name dktmemcache -d bitnami/memcached:latest
docker network inspect bridge |  grep -3 memcache
# Start 2 redis 
docker run --name dktredis -d -e REDIS_PASSWORD=dkt bitnami/redis:latest
docker network inspect bridge |  grep -3 redis
cd /srv/git/dev.kohana.top
docker run --name dkt -d -p 80:80 -v $(pwd):/app kohanaworld/unit:1.33.0-php7.3
docker exec -it dkt bash
chmod -R 777 /app/application/cache/
chmod -R 777 /app/application/logs/
chown -R 1000:1000 /app/
usermod -u 1000 unit
cd /app
php -v
composer diagnose
composer validate
composer install

⁠Run unittest

⁠docker network inspect bridge | grep -3 memcache

echo '172.16.0.3 dktmemcached' >> /etc/hosts
echo '172.16.0.4 dktmemcache' >> /etc/hosts
echo '172.16.0.5 dktredis' >> /etc/hosts

⁠Short test memcache & etc

vendor/bin/phpunit --bootstrap=modules/unittest/bootstrap.php modules/unittest/tests.php

⁠Long test memcache & etc

vendor/bin/phpunit --bootstrap=modules/unittest/bootstrap_all_modules.php modules/unittest/tests.php

⁠Check Nginx Unit Status (https://unit.nginx.org/⁠)

curl -X GET --unix-socket /var/run/control.unit.sock http://localhost/status

⁠Get Web config

curl -X GET --unix-socket /var/run/control.unit.sock http://localhost/config

⁠Put Web config (unit.init.json)

{
  "listeners": {
    "*:80": {
      "pass": "routes"
    }
  },
  "routes": [
    {
      "match": {
        "uri": "!/index.php"
      },
      "action": {
        "share": "/app/public$uri",
        "fallback": {
          "pass": "applications/kohana"
        }
      }
    }
  ],
  "applications": {
    "kohana": {
      "type": "php",
      "root": "/app/public/",
      "script": "index.php",
      "processes": {
        "max": 12,
        "spare": 4,
        "idle_timeout": 30
      }
    }
  }
}
curl -X PUT -d @unit.init.json  --unix-socket /var/run/control.unit.sock http://localhost/config/

⁠Check greenline in http://localhost/⁠

⁠or check inside container

curl -I localhost mv public/install.php public/install-ckeck.php

#CTL + D or exit

⁠Stop containers

docker stop dkt

Tag summary

Content type

Image

Digest

sha256:fc06bcb42…

Size

537.9 MB

Last updated

about 1 year ago

docker pull kohanaworld/unit:1.34.2-php8.4